SQL Academy
Premium
Funktionsreferenz

CAST

Wandelt einen Wert in den angegebenen Datentyp um.

PostgreSQL 17.5
CAST(value AS type)

Parameter

value
Umzuwandelnder Wert
typeDatentyp
Zieldatentyp, zum Beispiel INTEGER, NUMERIC, DATE oder TEXT

Rückgabewert

Wert des angegebenen Typs; eine fehlgeschlagene Umwandlung ist ein Abfragefehler

Beispiele

String in eine Zahl

PostgreSQL 17.5
SELECT CAST('42' AS INTEGER) + 1 AS result;
result
43

Rundung bei Umwandlung in INTEGER

PostgreSQL 17.5
SELECT CAST(12005.6 AS INTEGER) AS result;
result
12006

Kurzschreibweise mit ::

PostgreSQL 17.5
SELECT '42'::INTEGER * 2 AS result;
result
84

Details

TypErgebnis
INTEGER, BIGINTGanze Zahl. Ein Bruch vom Typ numeric wird von null weg gerundet (2.5 → 3), einer vom Typ double precision zur geraden Zahl (2.5 → 2). Ein String muss eine ganze Zahl enthalten: '12abc' und '3.7' führen zu einem Fehler.
NUMERIC[(p, s)]Exakte Zahl: s ist die Anzahl der Nachkommastellen, überzählige werden gerundet; eine Zahl, die nicht in p Stellen passt, ist ein Fehler.
DOUBLE PRECISIONGleitkommazahl mit etwa 15 signifikanten Stellen.
TEXT, VARCHAR(n)String. VARCHAR(n) kürzt den Wert stillschweigend auf n Zeichen.
DATEDatum; ein String muss ein existierendes Datum enthalten, die Uhrzeit wird verworfen.
TIMESTAMPDatum mit Uhrzeit, ohne Zeitzone.
BOOLEANLogischer Wert; aus Strings werden 'true', 'false', 'yes', 'no', '1' und '0' akzeptiert.

Statt CAST(value AS type) kannst du value::type schreiben.

Siehe auch

Wo du es lernst