Show Menu

PostgreSQL Cheat Sheet by

Wichtige PosgreSQL Befehle
development     sql     database     server     postgresql

Datentyp

integer: 1,2,3
serial: fortlaufende Ganzahl
float: 1.23
numeric: 1, 1.23
varchar: 'Hallo Welt!'
date: '2001-01-21'
time: '11:55:30'
timestamp: '2014-10-02 10:39:26.332'
current_timestamp: '2014-10-02 10:39:26.332'
boolean: true, false

Einsch­rae­nkung (Const­raint)

PRIMARY KEY ... Primär­sch­lüssel
UNIQUE ... Einzig­artiger Wert
NOT NULL ... Eingabe muss erfolgen
CHECK ... Defini­erter Werteb­ereich
DEFAULT ... Wenn nichts einget­ragen
REFERENCES ... Verweis auf Primär­sch­lüssel

Bedingung

Logisch: =,<­>,!­=,<­,>,­<=,­>=
Grenzen: BETWEEN minimum AND maximum
Aus Menge: IN (wert, ...)
Wortstück: LIKE 'stri­ngt­eil''
... WHERE alter = 35
... WHERE alter BETWEEN 35 AND 45;
... WHERE alter IN (35,45­,55);
... WHERE name LIKE '%ei%';
... WHERE name LIKE '%er;'

Aggreg­atf­unk­tionen

AVG() ... Mittelwert der Spalte
COUNT() ... Anzahl der Tupel
MAX() ... Maximaler Wert der Spalte
MIN() ... Minimaler Wert der Spalte
STDDEV() ... Standa­rdabw der Spalte
SUM() ...Summer der Spalte
VARIANCE() ...Varianz der Spalte

Als WHERE-­Bed­ingung ist keine Aggreg­atf­unktion möglich.
SELECT MAX(e­ink­omm­en)
FROM person;
 

Verknu­epf­ung­ope­ratoren

AND
OR

Tabelle erstellen

CREATE TABLE tabel­len­name (
attri­but­name date­ntyp cons­tra­int,
...
);
CREATE TABLE personen (
id serial UNIQUE PRIMARY KEY,
name varchar NOT NULL,
alter integer NOT NULL CHECK (alter
IN(25­,35­,45­,55)),
einkommen float NOT NULL CHECK(­ein­kommen
BETWEEN 1000.00 AND 3000.00),
zeits­tempel timestamp DEFAULT curren­t_t­ime­stamp,
auto integer REFERENCES kfz(nu­mmer)
);

Tabelle loeschen

DROP TABLE tabel­len­name;
DROP TABLE perso­nen;

Tabelle aus besteh­ender erstellen

CREATE TABLE tabel­len­name2
AS (
abfr­age
FROM tabel­len­name1
);
CREATE TABLE perso­nen­_neu
AS (
SELECT * FROM perso­nen
);

Datensatz erstellen

INSERT INTO tabel­len­name (
attri­but­name,
...
) VALUES (
wert,
...
);
INSERT INTO personen (
name,
alter,
einko­mmen,
auto
) VALUES (
'Hans Gruber',
35,
2487.24,
'G383AS'
);

Spalte in Tabelle erstellen

ALTER TABLE tabel­len­name
ADD attri­but­name date­ntyp;
ALTER TABLE perso­nen
ADD ledig BOOLEAN;
 

Gesamten Tabell­eni­nhalt loeschen

DELETE FROM tabel­len­name
DELETE FROM perso­nen;

Bestimmte Tabell­eni­nhalte loeschen

DELETE FROM tabel­len­name
WHERE bedi­ngung
DELETE FROM perso­nen
WHERE alter­=35;

Tabell­eni­nhalte editieren

UPDATE tabel­len­name
SET attri­but­name;
UPDATE personen
SET alter = 55
WHERE
name = 'Hans Gruber';

Gesamten Tabell­eni­nhalt abfragen

SELECT * FROM tabel­len­name
SELECT * FROM perso­nen;

Bestimmte Tabell­eni­nhalte abfragen

SELECT attri­but­name
FROM tabel­len­name
WHERE bedi­ngu­ng;
SELECT name , alter
FROM perso­nen;

SELECT name, alter
FROM perso­nen
WHERE einko­mmen <= 2000.00
OR
WHERE einko­mmen >=3­000;

Versch­ach­telte Abfragen

SELECT attri­but­name
FROM tabel­len­name
WHERE attri­but­name bedingung (
SELECT ...
);
SELECT *
FROM personen
WHERE einko­mmen = (
SELECT MAX(e­ink­omm­en)
FROM perso­nen
);

Mehrere Tabellen Abfragen

SELECT tabel­len­nam­e1.a­ttr­ibu­tname1
FROM tabel­len­name1, tabel­len­name2
WHERE tabel­len­nam­e1.a­ttr­ibu­tname1 = tabell­enn­ame­2.­at­tri­but­name2*;
SELECT perso­nen.name
FROM perso­nen, vorga­ben
WHERE perso­nen.ei­nko­mmen < vorg­abe­n.m­ind­est­lohn;

Variab­lenname deklar­ieren

... FROM tabel­len­name as varia­ble­nname, ...
SELECT a.name
FROM personen as a, vorgaben as b
WHERE a.ein­kommen < b.mi­nde­stl­ohn;

Synthe­tische Tabelle erstellen (View)

CREATE VIEW viewname AS abfr­age
CREATE VIEW reich­e_p­ers­onen
AS
SELECT name
FROM personen
WHERE einkommen >10­000­0.00;

Download the PostgreSQL Cheat Sheet

2 Pages
//media.cheatography.com/storage/thumb/manebanane_postgresql.750.jpg

PDF (recommended)

Alternative Downloads

Share This Cheat Sheet!

 

Comments

No comments yet. Add yours below!

Add a Comment

Your Comment

Please enter your name.

    Please enter your email address

      Please enter your Comment.

          Related Cheat Sheets

          MySQL Cheat Sheet
          SQL Server Cheat Sheet