PostgreSQL Cheat Sheet
This cheat sheet covers fundamental PostgreSQL commands that are essential for managing databases, tables, and data.
General Commands
-
Connect to PostgreSQL Database
psql -d database_name -U user_name
-
List Databases
\l
-
Switch Database
\c database_name
-
List Tables
\dt
-
Describe Table Structure
\d table_name
-
List All Schemas
\dn
-
List All Stored Procedures/Functions
\df
-
List All Views
\dv
-
Exit psql
\q
Database Operations
-
Create Database
CREATE DATABASE database_name;
-
Drop Database
DROP DATABASE IF EXISTS database_name;
User and Permissions
-
Create User
CREATE USER user_name WITH PASSWORD 'password';
-
Grant All Privileges on Database
GRANT ALL PRIVILEGES ON DATABASE database_name TO user_name;
Table Operations
-
Create Table
CREATE TABLE table_name ( column_name1 data_type1, column_name2 data_type2, ... );
-
Drop Table
DROP TABLE IF EXISTS table_name;
-
Add a Column to Table
ALTER TABLE table_name ADD COLUMN column_name data_type;
-
Drop a Column from Table
ALTER TABLE table_name DROP COLUMN column_name;
-
Rename Table
ALTER TABLE table_name RENAME TO new_table_name;
Data Manipulation
-
Insert Data
INSERT INTO table_name (column1, column2, ...) VALUES (value1, value2, ...);
-
Update Data
UPDATE table_name SET column1 = value1, column2 = value2 WHERE condition;
-
Delete Data
DELETE FROM table_name WHERE condition;
Querying Data
-
Select Query
SELECT column1, column2, ... FROM table_name;
-
Select with Condition
SELECT * FROM table_name WHERE condition;
-
Aggregate Functions
SELECT COUNT(*), MAX(column1), MIN(column1), AVG(column1) FROM table_name;
-
Join Tables
SELECT * FROM table1 INNER JOIN table2 ON table1.common_field = table2.common_field;
-
Group By
SELECT column, COUNT(*) FROM table_name GROUP BY column;
-
Order By
SELECT * FROM table_name ORDER BY column ASC|DESC;