Wie konvertiere ich eine Zeichen-zu-Ganzzahl in eine PostgreSQL (9.1) - Funktion?
Habe ich diese folgenden code:
BEGIN
x := split_part(text, ',', 1);
UPDATE albumphoto SET order = 1 WHERE idtable = 1 AND idx = x;
END
Aber meine Spalte Tabelle mit dem Namen idx
ist ein numerischer Typ ist, und die split_part
gibt einen Charakter-Typ der Variablen x
. Ich habe versucht, mit CAST
, aber ich weiß nicht, wie Sie es richtig verwenden.
Irgendwelche Ideen?
InformationsquelleAutor Georgy Passos | 2013-02-07
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wie diese:
(Verwendung geeigneter numerischer Typ statt
INTEGER
).InformationsquelleAutor Anton Kovalenko
Oder einfacher:
expression::type
ist die einfache (nicht-SQL-standard) PostgreSQL-Weg zu werfen. Details im Handbuch im Kapitel Typ-Casts.Mehr über Datentypen in PostgreSQL.
Den letzten Prädikat Hinzugefügt habe ist nützlich, wenn
order
konnte bereits werden1
, in dem Fall das update würde nichts ändern, aber immer noch das gleiche Kosten. Lieber nichts tun, statt. Verwandte (beachten Sie den letzten Absatz):Ist und Sie nicht müssen eine variable, hier.
InformationsquelleAutor Erwin Brandstetter