Es ist nicht zum Speichern von Datumsangaben als Zeichenfolge vorgeschlagen, vor allem aufgrund dieser besonderen Grund. Versuchen Sie also, Ihren Spaltentyp zu ändern, um dies in Zukunft zu vermeiden.
Jetzt können Sie es vergleichen, indem Sie beide Strings bis heute mit to_date
Funktion konvertieren.
select something from some_table where
to_date(date_Column,'YYYYMMDD')=to_date(search_value,'MM/DD/YYYY');
Wie Sie in den Kommentaren gefragt, es ist möglich, es zu tun, indem die Saiten Type untersucht auch aber ich denke, von Daten zu vergleichen wäre schneller und weniger anfällig für Ungenauigkeiten.
Aktualisieren Sie nach dem Anzeigen Ihrer Abfrage.
Sie konvertieren BirthDate
auf dem neuesten Stand und es gibt auch keine =
in Ihrer Abfrage zu vergleichen. Angenommen, dass BirthDate eine Zeichenfolge mit MM/DD/YYYY
Format ist, verwenden Sie etwas wie unten.
select * from ona left join mnv on ona.xyz = mnv.xyz
where
to_date(mnv.DOB,'YYYYMMDD') = to_date(BirthDate,'MM/DD/YYYY')
and mnv.DOB is not null
and BirthDate is not null.
ist die Konvertierung überhaupt nicht möglich? Wie umgekehrt und dann die Positionierung ändern – user7822440