Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

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;-)

Geschrieben

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.

Geschrieben

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

Geschrieben

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 ... ;)

Geschrieben

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

Geschrieben
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.

Geschrieben

jepp. genau ... dass es nen kleinen unterschied gibt, wusste ich noch, aber nemmer welchen ... :D

mir wurde jedoch von unserem db admin geraten YYYY zu verwenden, darum hatte ich nochmal wegen dem RRRR nachgefragt. :)

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 erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...