Veröffentlicht 21. Oktober 200222 j Moin! Vielleicht kann mir Oracle-Anfänger ja wer helfen... Ich hab einen SQL-String, in dem ich Datensätze selektieren will, die zwischen zwei Daten liegen - also in einem Date-Feld nen Wert haben, der zwischen den beiden Datumswerten liegt. Wenn ich jetzt nur nach Datum abfrage, gibt's keine Probleme, wenn aber in diesem Datumswert auch eine Uhrzeit dabei ist, bekomme ich von Oracle die Fehlermeldung "ORA 01830: Datumsformatstruktur endet vor Umwandlung der gesamten Eingabezeichenfolge." Mein SQL-String ist folgender: 'SELECT * FROM STAMMDATEN WHERE (WVDATUM < '02.02.02 02:02:02') AND (WVDATUM > '01.01.01 01:01:01') ORDER BY WVDATUM' Die Daten sind natürlich erstmal nur Testwerte... Was mache ich denn falsch? Und wie kann ich Oracle dazu bewegen, auch die Uhrzeit anzunehmen? Also in dem Feld wird Datum und Uhrzeit anstandslos gespeichert und auch im selben Format wieder ausgegeben, das ich im Query auch verwende... Hiiiilfe... :eek:
21. Oktober 200222 j select abfrage from tabelle where datum = to_date('01.01.2002','dd.mm.yyyy'); select abfrage from tabelle where datum = to_date('01.01.2002','dd.mm.yyyy HH24:MI'); so sollte das gehen ... du kannst ja nur datum und datum vergleichen, also musst erstmal ein datum genrieren (mit to_date()) so long
21. Oktober 200222 j Autor Original geschrieben von -leliel- select abfrage from tabelle where datum = to_date('01.01.2002','dd.mm.yyyy'); select abfrage from tabelle where datum = to_date('01.01.2002','dd.mm.yyyy HH24:MI'); so sollte das gehen ... du kannst ja nur datum und datum vergleichen, also musst erstmal ein datum genrieren (mit to_date()) so long thx, aber das Problem bleibt das selbe... - hab wieder die Fehlermeldung... - aber halt nur bei der zweiten Möglichkeit! - Ich hab da aber auch die aktuelle Uhrzeit an das Datum gehängt - denn die brauche ich ja auch... - vielleicht ist das ja das Problem...
22. Oktober 200222 j Hallo, also bei mir lief folgende Abfrage ohne Probleme: select * from tabelle where datum < to_date('01.01.2002 13:40', 'DD.MM.YYYY HH24:MI'); Falls du die Sekunden auch brauchst, einfach noch nen :SS hinter HH24:MI Wenn immer noch Fehler auftreten, könnte das vielleicht mit dem NLS-Sprachparameter zusammenhängen, glaub ich aber eigentlich nicht. Gruß, AxlHammer
22. Oktober 200222 j @Axl danke fuers verbessern ... hatte beim copy&paste die datumsangabe beim ersten parameter vergessen ... :eek:
24. Oktober 200222 j Autor thx ihr! Aber ich hab's jetzt mit Sysdate gelöst - zum Glück ist das zu vergleichende Datum immer das aktuelle
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.