ChrisDaHub Geschrieben 10. April 2003 Geschrieben 10. April 2003 Hallo, ich versuche hier schon seit einiger Zeit eine Abfrage auf eine Oracle-Tabelle zu machen. Ich suche nach allen Datensätzen, die ein bestimmtes Datum haben müssen. Leider bekomme ich ständig Fehlermeldungen bei der Abfrage: [Oracle][ODBC][Ora]ORA-00920: invalid relational operator Wie muss ich das Datum in der Abfrage formatieren, dass ich endlich ein Ergebnis bekomme? Eine einfache SQL-Anweisung würde mir als Antwort reichen. Danke & viele Grüße. Chris;-)
Olli_Master Geschrieben 10. April 2003 Geschrieben 10. April 2003 2 Beispiele: Festes Datum: SELECT ename,hiredate FROM scott.emp WHERE trunc(hiredate) = TO_DATE('20.02.1981','DD.MM.RRRR'); (trunc entfernt die Uhrzeit, indem die Nachkommastellen ignoriert werden) Datumsbereich: SELECT ename,hiredate FROM scott.emp WHERE hiredate BETWEEN TO_DATE('01.01.1981','DD.MM.RRRR') AND TO_DATE('01.06.1981','DD.MM.RRRR'); Ich hoffe das hilft.
shad0w Geschrieben 10. April 2003 Geschrieben 10. April 2003 Hi, wieso verwendest du RRRR und nicht YYYY ??
ChrisDaHub Geschrieben 10. April 2003 Autor Geschrieben 10. April 2003 Hi, ich werde das gleich morgen auf der Arbeit testen. Danke! Wenn du schon eine Möglichkeit hast, die Uhrzeit wegzulassen, gibt es auch eine Möglichkeit, nur die Uhrzeit in der Spalte auszugeben? Gruß, chris
shad0w Geschrieben 11. April 2003 Geschrieben 11. April 2003 select to_char(sysdate,'HH24:MI') from dual; damit kannst nur die uhrzeit ausgeben lassen ... schau mal im oracle technet, da gibt es jede menge zu den datumsformaten ...
ChrisDaHub Geschrieben 11. April 2003 Autor Geschrieben 11. April 2003 Hi, so wie ich das sehe, bekomme ich da die aktuelle Uhrzeit. Ich hätte aber schon gerne die Uhrzeit gehabt, die hinter dem Datum im Datensatz steht. Kann ich da einfach Sysdate durch den Feldnamen ersetzen? Gruß, Chris
shad0w Geschrieben 11. April 2003 Geschrieben 11. April 2003 Original geschrieben von ChrisDaHub Kann ich da einfach Sysdate durch den Feldnamen ersetzen? JA.
Olli_Master Geschrieben 15. April 2003 Geschrieben 15. April 2003 Original geschrieben von -leliel- Hi, wieso verwendest du RRRR und nicht YYYY ?? RRRR und YYYY haben eine ähnliche Bedeutung. Allerdings gibt es einen kleinen, aber feinen Unterschied - nämlich dann, wenn 2-stellige Jahreszahlen ins Spiel kommen: Beispiel: SQL> select to_char(to_date('01.01.98','DD.MM.RR'),'DD.MM.YYYY') from dual; Ausgabe ---------- 01.01.1998 SQL> select to_char(to_date('01.01.98','DD.MM.YY'),'DD.MM.YYYY') from dual; Ausgabe ---------- 01.01.2098 Dies spielt aber nur eine Rolle, wenn eine Zeichenkette mit 2 stelligem Jahr in einen Datumswert umgewandelt werden soll.
shad0w Geschrieben 15. April 2003 Geschrieben 15. April 2003 jepp. genau ... dass es nen kleinen unterschied gibt, wusste ich noch, aber nemmer welchen ... mir wurde jedoch von unserem db admin geraten YYYY zu verwenden, darum hatte ich nochmal wegen dem RRRR nachgefragt.
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden