::
SQL-Konstrukt
Entsprechung in MySQL:
Wandelt einen Wert in den angegebenen Typ um: eine Kurzform von CAST(value AS type), die es nur in PostgreSQL gibt.
PostgreSQL 17.5
value::typeParameter
- 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
Strings in eine Zahl und ein Datum, ein Bruch in eine ganze Zahl
PostgreSQL 17.5
SELECT '42'::integer + 1 AS number,
'2024-03-08'::date AS DAY,
3.7::integer AS rounded;Datum und Text aus Spalten
PostgreSQL 17.5
SELECT member_name,
birthday::date AS birth_date,
member_id::text AS id_text
FROM FamilyMembers;Ganzzahlige und exakte Division
PostgreSQL 17.5
SELECT 10 / 4 AS integer_division,
10::numeric / 4 AS exact_division;Details
value::type macht dasselbe wie CAST(value AS type) und folgt denselben Regeln: Zum Beispiel führt '3.7'::integer zu einem Fehler, während 3.7::integer auf 4 gerundet wird.
Der Operator :: wird vor der Arithmetik angewendet: In 10::numeric / 4 wird nur 10 in numeric umgewandelt, und die Division wird exakt. Um einen ganzen Ausdruck umzuwandeln, setzt du ihn in Klammern: (amount * unit_price)::text.