Frage

SELECT pd_end_dt,nrx_cnt
FROM wkly_lnd.lnd_wkly_plan_rx_summary
WHERE pd_end_dt >TO_DATE('01/01/2009')

Es gibt einen Fehler von ORA-01843: kein gültiger Monat


Ich lief Folgendes, es lief gut

Wählen Sie pd_end_dt, nrx_cnt aus wkly_lnd.lnd_wkly_plan_rx_summary wobei pd_end_dt> '01 -jan-09 '

Aber wenn ich wöchentliche Daten haben möchte, wie man dat macht

Keine korrekte Lösung

Andere Tipps

Sie geben keine Formatzeichenfolge an MITEINANDER AUSGEHEN. Dies kann dazu führen, dass Oracle Ihr Datum falsch behandelt. Versuchen

to_date('01/01/2009', 'DD/MM/YYYY')

Stattdessen (je nachdem, woher Sie kommen, möchten Sie möglicherweise die Reihenfolge von DD und MM ändern). Sehen Diese Beschreibung des TO_DATE -Format -String -Arguments für Details.

Versuchen

TO_DATE('01/01/2009', 'dd/mm/yyyy')

Ok, nicht hart zu klingen, aber zuerst eine Google -Suche durchführen. Die vorherigen Antworten funktionieren, aber für eine Comlete -Erklärung siehe

http://www.dbmotive.com/oracle_error_codes.php?errcode=01843

Wenn Sie das Standardformat so verwenden möchten, wie Sie es tun, sollten Sie herausfinden, was das zuerst ist

Es gibt zwei Möglichkeiten:

  1. Die Funktion to_date fällt aufgrund des Standarddatumformats (gemäß den anderen hier angegebenen Antworten) fehl.

  2. Die Kolumne pd_end_dt ist keine Datumsspalte. Die Abfrage versucht, die Werte in umzuwandeln pd_end_dt Zu Daten vor dem Vergleich und fehlschlägen in einer der Zeilen.

Demonstrieren:

SQL> create table t1 (datestrings varchar2(10));
SQL> insert into t1 values ('01/01/2009');
SQL> insert into t1 values ('02/01/2009');
SQL> insert into t1 values ('01/XX/2009');
SQL> select * from t1 where datestrings > '01/01/2009';

DATESTRINGS 
-----------
02/01/2009
01/XX/2009  

2 rows selected

SQL> select * from t1 where datestrings > TO_DATE('01/01/2009');

ORA-01843: not a valid month

SQL> select * from t1 where datestrings > TO_DATE('01/01/2009','DD/MM/YYY');

ORA-01843: not a valid month
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top