String bisher in Oracle mit Millisekunden
Frage
Ich mag die Folge Zeichenfolge Datum konvertieren:
2004-09-30 23:53:48,140000000
Ich habe versucht:
to_date('#', 'YYYY-MM-DD HH24:MI:SS,FF9')
Aber PL / SQL hält diese Fehler zu werfen:
ORA-01821: date format not recognized.
ist FF9 falsch für Oracle, jede Anregung?
Lösung
Oracle
speichert nur die Fraktionen bis zu Sekunde in einem DATE
Feld.
Verwenden TIMESTAMP
statt:
SELECT TO_TIMESTAMP('2004-09-30 23:53:48,140000000', 'YYYY-MM-DD HH24:MI:SS,FF9')
FROM dual
, möglicherweise an einem DATE
Gießen dann:
SELECT CAST(TO_TIMESTAMP('2004-09-30 23:53:48,140000000', 'YYYY-MM-DD HH24:MI:SS,FF9') AS DATE)
FROM dual
Andere Tipps
Ich glaube nicht, Sie Sekundenbruchteile mit to_date oder dem Typ DATE in Oracle verwenden können. Ich glaube, Sie brauchen TO_TIMESTAMP, die einen TIMESTAMP-Typ zurückgibt.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow