Oracle-SQL convert date format DD-Mon-YY zu YYYYMM

Habe ich eine zum vergleichen von Daten in 2 Tabellen, aber das problem ist, dass eine Tabelle das Datum in DD-Mon-YY-format und die andere im format YYYYMM.

Ich brauche, um beide YYYYMM für den Vergleich.

Ich brauche, um etwas zu schaffen, wie diese:

SELECT * FROM offers 
WHERE offer_date = (SELECT to_date(create_date, 'YYYYMM') FROM customers where id = '12345678') 
AND offer_rate > 0

wo create_date ist so etwas wie 12-Mar-2006 und offer_date ist so etwas wie 200605

Irgendwelche Ideen, wo ich anpassen müssen, um diese Abfrage??

Warum haben Sie ein problem? Ist offer_date eine VARCHAR2 (string)?
Termine nicht haben Formate wie die. Wenn Sie möchten, dass das format, Sie wollen einen string per definition. So sind Sie auf der Suche nach strings (mit diesem format) oder DATETIMEs (was nicht ein format haben). Und so, wenn die Felder "unterschiedliche Formate", was sind Ihre tatsächlichen Daten-Typen? DATETIMEs, ein VHARCHAR()s, etc?
offer_date ist ein ZAHL-Feld
zusätzlich zu den oben genannten Kommentar, create_date ist ein DATE-Feld
Es wäre besser, wenn Sie könnte konvertieren der Datentypen für Datum-Spalten zu DATE. Warum NUMBER für eine date-Spalte?

InformationsquelleAutor Tom | 2012-05-10

Schreibe einen Kommentar