Dump the query results to .csv
How do you print the result of a PostgreSQL query in CSV or TSV format from the command line?
psql -d <database_name> -c "<command>" -A -F , -X -o <file_name.csv>
Copy (select * from users) To '/tmp/sample_data.csv' With CSV DELIMITER ',' HEADER;
Terminate active connections to the database
SELECT pg_terminate_backend (pg_stat_activity.pid)
FROM pg_stat_activity
WHERE pg_stat_activity.datname = 'process_designer';
Generate a SQL with specified columns not present
SELECT 'SELECT ' || string_agg('o' || '.' || c.column_name, ', ') || ' FROM ' || table_name || ' o' As sqlstmt
FROM information_schema.columns As c
WHERE table_name = 'office' AND
c.column_name NOT IN ('id', 'deleted')
GROUP BY c.table_name;
Create a copy of psql database.
CREATE DATABASE <new_database_name> template <old_database_name>
Updating size of varchar in Postgres column
alter table <table_name> alter COLUMN <column_name> type varchar(<new_size>);
Get data greater than days
select * from users where created_at < (CURRENT_DATE - INTERVAL '30 days');