Here's how you can query your JSON column in PostgreSQL: -- Give me params.name (text) from the events table One of PostgreSQL's benefits is that it's a relational database, but you can also get the advantages of unstructured data by storing things in a JSON column. It explicitly specified the column names for the new table instead of using the column names from the SELECT clause.. To check the structure of the film_rating table, you … Basically a list of tables by name ascending. And you should only use the asterisk (*) shorthand for the ad-hoc queries that examine data from the database. The above screenshot will show you the data inside the NewCustomer table present in the SQL Tutorial database. You can query the INFORMATION_SCHEMA to get information about the columns of a table and build the query. Query below returns a list of all columns in a specific table in PostgreSQL. The reason for the simplicity is that as far as clients are concerned queries ie SELECT queries, ie non data defining or data manipulation queries, whether on tables, views, or other queries return rows and columns of data, so PostgreSQL should be able to return a list of the column names and their data types. This example statement created a new table film_rating and filled it with the summary data from the film table.  While SELECT * is useful for off-the-cuff queries, it is widely considered bad style in production code, since adding a column to the table would change the results. It's pretty complex but it does show you the power and flexibility of the PostgreSQL system catalog and should get you on your way to pg_catalog mastery ;-). It will only show the order placed by user the first time in the month: This query returns all the columns and all the rows of the table. PostgreSQL SELECT – Only specific columns. For this Get Column Names From Table example, We are going to use the below shown data. I am new to postgres and I want to be able to set value to Y if order (order table) is a first month order (first month order table) first month order table is as per below. SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = N'Customers' Because of these reasons, it is a good practice to explicitly specify the column names in the SELECT clause whenever possible to get only necessary data from the database. Be sure to change out the %s's in the query. Query select ordinal_position as position, column_name, data_type, case when character_maximum_length is not null then character_maximum_length else numeric_precision end as max_length, is_nullable, column_default as default_value from information_schema.columns where table_name = 'Table name' -- enter table name … Then you can try this to describe a table … SELECT * FROM my_table WHERE 1=0 or SELECT TOP 0 * FROM my_table But if you want to use those columns somewhere or simply say manipulate them then the quick queries above are not going to be of any use. columns_or_expressions: This is the list of the column names or expressions that you wish to retrieve using the select query. If you want to only know the column names you can use. You need to use. FROM: This keyword helps in specifying the name of the table from which you wish to retrieve the records. To query only specific columns of the table, specify those column names … 4) Using PostgreSQL SELECT statement with expressions example  In some database systems, including older versions of PostgreSQL, the implementation of DISTINCT automatically orders the rows and so ORDER BY is unnecessary. The first is Schema and the second is the table name. Open up the postgres terminal with the databse you would like: psql dbname (run this line in a terminal) then, run this command in the postgres environment \d This will describe all tables by name. How to write a query to Get Column Names From Table in SQL Server is one of the standard Interview Questions you might face.