Oracle SQL, wie Zeit von Datum entfernt wird
Habe ich eine Spalte mit dem Namen StartDate
enthält ein Datum in diesem format: 03-03-2012 15:22
Was ich brauche, ist, es zu konvertieren to date. Es sollte so Aussehen: DD/MM/YYYY
Was ich versucht habe, ohne Erfolg:
select
p1.PA_VALUE as StartDate,
p2.PA_VALUE as EndDate
from WP_Work p
LEFT JOIN PARAMETER p1 on p1.WP_ID=p.WP_ID AND p1.NAME = 'StartDate'
LEFT JOIN PARAMETER p2 on p2.WP_ID=p.WP_ID AND p2.NAME = 'Date_To'
WHERE p.TYPE = 'EventManagement2'
AND TO_DATE(p1.PA_VALUE, 'DD/MM/YYYY') >= TO_DATE('25/10/2012', 'DD/MM/YYYY')
AND TO_DATE(p2.PA_VALUE, 'DD/MM/YYYY') <= TO_DATE('26/10/2012', 'DD/MM/YYYY')
Gibt es eine Möglichkeit, dies zu tun?
EDIT1: die PA_VALUE
Spalte: VARCHAR2
InformationsquelleAutor der Frage Slim | 2012-10-30
Du musst angemeldet sein, um einen Kommentar abzugeben.
Beim konvertieren von string zu einem Datum muss das Datum Maske auf das format in der Zeichenkette. Dies beinhaltet ein Zeit-element, das Sie entfernen müssen, mit Trunkierung:
InformationsquelleAutor der Antwort APC
Können Sie TRUNC auf DateTime zu entfernen Teil des DateTime. Also deine where-Klausel:
InformationsquelleAutor der Antwort Habib
Versuchen
InformationsquelleAutor der Antwort pavelpopov
Wir können TRUNC-Funktion in Oracle-DB. Hier ist ein Beispiel.
Ausgabe:
1/1/2018
InformationsquelleAutor der Antwort Jar Yit