Veröffentlicht 10. April 200322 j 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;-)
10. April 200322 j 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.
10. April 200322 j 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
11. April 200322 j 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 ...
11. April 200322 j 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
11. April 200322 j Original geschrieben von ChrisDaHub Kann ich da einfach Sysdate durch den Feldnamen ersetzen? JA.
15. April 200322 j 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.
15. April 200322 j 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.
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.