Ich habe eine Tabelle, die eine Spalte mit Datentyp Datum hat.Datensätze ohne Zeitstempel
Daten wurden durch eine API im Format 'MM/TT/JJJJ HH12: MI: SS AM' von 2005 und irgendwo in den Jahren in 'MM/DD/YYYY' geändert, weiß nicht wann.
Jetzt muss ich herausfinden, wann dies begann. Wie separiere ich die Datensätze mit und ohne Zeitstempel in einer Abfrage?
P.S: Die Tabelle ist riesig, Millionen von Datensätzen, so dass das Holen aller Zeilen und Sortieren nicht hilft.
Diese Aufzeichnungen * bis * haben eine Zeitkomponente Es ist gerade Mitternacht. Sie sollten also die Datensätze mit 'MM/DD/YYYY 00: 00: 00' betrachten. – HoneyBadger
möglicherweise als Zeichenfolge umgewandelt, und wählen Sie dann min (Zeitstempel), wo Länge (Cast (Zeitstempel als String) <= 10 oder was auch immer ist die Länge von MM/TT/JJJJ – MiloBellano
@MiloBellano Ein 'DATE' Datentyp ** immer ** hat Sowohl Datums- als auch Zeitkomponenten - Wenn ein Wert nur als Komponenten für das Jahr verwendet wird, wird die Stunde bis Sekunde standardmäßig auf Mitternacht ('00: 00: 00') gesetzt. Wenn das Datum in eine Zeichenfolge umgewandelt wird, wird nur ein impliziter Aufruf ausgeführt zu 'TO_CHAR' mit dem Session-Parameter' NLS_DATE_FORMAT' als Formatmodell - und das alle Datumsangaben identisch formatiert, unabhängig davon, ob die Zeitkomponente Mitternacht ist oder nicht – MT0