Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
185 views

Cheat Sheet Postgresql

This document provides a cheat sheet for common PostgreSQL queries and commands. It summarizes SELECT queries including keywords like DISTINCT, BETWEEN, IN, and LIKE. It also covers modifying data through INSERT, UPDATE, and DELETE statements. Additionally, it lists commands for creating tables, indexes, and other database objects as well as altering and dropping them.

Uploaded by

yaga
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
185 views

Cheat Sheet Postgresql

This document provides a cheat sheet for common PostgreSQL queries and commands. It summarizes SELECT queries including keywords like DISTINCT, BETWEEN, IN, and LIKE. It also covers modifying data through INSERT, UPDATE, and DELETE statements. Additionally, it lists commands for creating tables, indexes, and other database objects as well as altering and dropping them.

Uploaded by

yaga
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 1

PostgreSQL Cheat Sheet

www.databasestar.com
SELECT Query Modifying Data Create Table
SELECT col1, col2
FROM table Insert INSERT INTO tablename Create Table CREATE TABLE tablename (
JOIN table2 ON table1.col = table2.col (col1, col2...) column_name data_type
WHERE condition VALUES (val1, val2); );
GROUP BY column_name Insert from a
HAVING condition INSERT INTO tablename
Table
ORDER BY col1 ASC|DESC; (col1, col2...) Create Table with Constraints
SELECT col1, col2...

CREATE TABLE tablename (


SELECT Keywords Insert Multiple
Rows
INSERT INTO tablename
(col1, col2...) VALUES column_name data_type NOT NULL,
(valA1, valB1), CONSTRAINT pkname PRIMARY KEY (col),
DISTINCT: Removes SELECT DISTINCT product_name (valA2, valB2), CONSTRAINT fkname FOREIGN KEY (col)
duplicate results FROM product; (valA3, valB3); REFERENCES other_table(col_in_other_table),
CONSTRAINT ucname UNIQUE (col),
CONSTRAINT ckname CHECK (conditions)
BETWEEN: Matches a SELECT product_name
Update UPDATE tablename );
value between two FROM product
other values (inclusive) WHERE price BETWEEN 50 AND 100; SET col1 = val1
WHERE condition;
Create Temporary CREATE TEMP TABLE tablename (
SELECT product_name Table colname datatype
IN: Matches to any of
FROM product Update with UPDATE t );
the values in a list
WHERE category IN a Join SET col1 = val1
('Electronics', 'Furniture'); FROM tablename t
INNER JOIN table x Drop Table DROP TABLE tablename;
LIKE: Performs SELECT product_name ON t.id = x.tid
wildcard matches using FROM product WHERE condition;
_ or % WHERE product_name
Delete DELETE FROM tablename
Alter Table
LIKE '%Desk%";
WHERE condition;
Add Column ALTER TABLE tablename ADD COLUMN
columnname datatype;
Joins Indexes
Drop Column ALTER TABLE tablename DROP COLUMN
Create Index CREATE INDEX indexname columnname;
SELECT t1.*, t2.*
ON tablename (cols);
FROM t1
join_type t2 ON t1.col = t2.col; Modify Column ALTER TABLE tablename ALTER COLUMN
Drop Index DROP INDEX indexname; columnname TYPE newdatatype;
Table 1 Table 2

A A
Set Operators Rename Column ALTER TABLE tablename RENAME COLUMN
currentname TO newname;
B B

C D UNION: Shows unique


Add Constraint ALTER TABLE tablename ADD CONSTRAINT
rows from two result sets. constraintname constrainttype
INNER JOIN: show all matching A (columns);
A
records in both tables. UNION ALL: Shows all
B B
rows from two result sets.
Drop Constraint ALTER TABLE tablename DROP
constraint_type constraintname;
LEFT JOIN: show all records from left A A
INTERSECT: Shows rows that
table, and any matching records from Rename Table ALTER TABLE tablename
B B exist in both result sets.
right table. RENAME TO newtablename;
C

EXCEPT: Shows rows that exist


RIGHT JOIN: show all records from in the first result set but not
Window/Analytic Functions
A A
right table, and any matching records the second.
B B
from left table.
function_name ( arguments ) OVER (
Aggregate Functions
D
[query_partition_clause]
[ORDER BY order_by_clause
FULL JOIN: show all records from A A SUM: Finds a total of the numbers provided
[windowing_clause] ] )
both tables, whether there is a match COUNT: Finds the number of records
or not. B B AVG: Finds the average of the numbers provided
Example using RANK, showing the student details and their rank
C MIN: Finds the lowest of the numbers provided
according to the fees_paid, grouped by gender:
MAX: Finds the highest of the numbers provided
D
SELECT

Common Functions
student_id, first_name, last_name, gender, fees_paid,

CASE Statement
RANK() OVER (
LENGTH(string): Returns the length of the provided string PARTITION BY gender ORDER BY fees_paid
POSITION(string IN substring): Returns the position of the ) AS rank_val
Simple Case CASE name FROM student;
substring within the specified string.
WHEN 'John' THEN 'Name John'
CAST(expression AS datatype): Converts an expression into the
WHEN 'Steve' THEN 'Name Steve'
specified data type.
ELSE 'Unknown'
END
NOW: Returns the current date, including time.
CEIL(input_val): Returns the smallest integer greater than the
Subqueries
provided number. SELECT id, last_name, salary
Single Row
Searched Case CASE FLOOR(input_val): Returns the largest integer less than the FROM employee
WHEN name='John' THEN 'Name John' provided number. WHERE salary = (
WHEN name='Steve' THEN 'Name Steve' ROUND(input_val, [round_to]): Rounds a number to a specified SELECT MAX(salary)
ELSE 'Unknown' number of decimal places. FROM employee
END TRUNC(input_value, num_decimals): Truncates a number to a );
number of decimals.

Common Table Expression SELECT id, last_name, salary


REPLACE(whole_string, string_to_replace, replacement_string): Multi Row
Replaces one string inside the whole string with another string. FROM employee
SUBSTRING(string, [start_pos], [length]): Returns part of a value, WHERE salary IN (
WITH queryname AS ( based on a position and length. SELECT salary
SELECT col1, col2 FROM employee
FROM firsttable) WHERE last_name LIKE 'C%'
SELECT col1, col2.. );
FROM queryname...;

You might also like