beetFreeQ Geschrieben 21. Oktober 2002 Teilen Geschrieben 21. Oktober 2002 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: Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
shad0w Geschrieben 21. Oktober 2002 Teilen Geschrieben 21. Oktober 2002 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 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
beetFreeQ Geschrieben 21. Oktober 2002 Autor Teilen Geschrieben 21. Oktober 2002 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... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
AxlHammer Geschrieben 22. Oktober 2002 Teilen Geschrieben 22. Oktober 2002 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 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
shad0w Geschrieben 22. Oktober 2002 Teilen Geschrieben 22. Oktober 2002 @Axl danke fuers verbessern ... hatte beim copy&paste die datumsangabe beim ersten parameter vergessen ... :eek: Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
beetFreeQ Geschrieben 24. Oktober 2002 Autor Teilen Geschrieben 24. Oktober 2002 thx ihr! Aber ich hab's jetzt mit Sysdate gelöst - zum Glück ist das zu vergleichende Datum immer das aktuelle Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.