Der T- SQL DATEDIFF-Funktion ermöglicht es Ihnen, zwei Daten vergleichen und kehren den Unterschied zwischen ihnen in einer Vielzahl von unterschiedlichen Intervallen , einschließlich Jahre, Monate , Tage, Stunden , Minuten oder Sekunden . Um Chronologie zu überprüfen, können Sie auch die "zwischen" Option und prüfen Sie, ob ein bestimmtes Datum fällt zwischen zwei anderen. Sie können auch zwei Daten vergleichen mit der größer als, kleiner als und gleich Betreiber . Datum Datentypen
Beginnend mit SQL 2008 unterstützt Microsoft Datenbanken Datentypen, die Ihnen das Datum und die Zeit separat speichern können . Andere Werte sind smalldatetime Datum , die eine kombinierte Datums-und Zeitwert , der keine Sekunde, datetime , die den Wert speichert mit einer Genauigkeit von bis zu 0,00333 Sekunden und datetime2 mit einer Genauigkeit von 100 Nanosekunden speichert .
< Br >
Mit DATEDIFF
DATEDIFF können Sie die Anzahl der Grenzen eines bestimmten Typs , die zwischen zwei Daten auftreten zurückzukehren. Erhältlich Abständen oder Grenzen, um zu überprüfen, sind Jahr, Quartal , Monat, Tag , Wochentag, Stunde, Minute, Sekunde und mehr. Das Format der DATEDIFF Funktion DATEDIFF ( ' Grenze ' , startdate , enddate ) . Die Grenze ist die datepart Sie für den Check wird von den Entscheidungen oben . Viele Abkürzungen für diese Datumseinheiten verwendet werden. Die startdate und enddate kann jeder gültige Ausdruck oder eine Variable , die zu einer legititmate Datum oder Uhrzeit -Datentyp ausgewertet wird .
Vergleich mit Zwischen
Um zu überprüfen, ob ein Datums erfolgt nach einem bestimmten Datum und bevor ein anderes Datum , können Sie die ZWISCHEN Anweisung verwenden. Dies ist nützlich in einer Abfrage , um alle Objekte in einer bestimmten Zeitperiode zu bekommen. Sie können , zum Beispiel , verwenden Sie es in der WHERE-Klausel , um alle Ereignisse in Januar , wie unten gezeigt ziehen :
SELECT eventID , eventdate von EventsWHERE eventdate zwischen '01 /01/2011 'AND '01 /31 /2011 '
Andere Datum vergleiche
zwei Daten vergleichen, können Sie auch die größer als, kleiner als oder gleich Mobilfunkanbieter in Ihrem WHERE-Anweisungen . Um alle Elemente mit einem Datum vor dem 1. Januar 2011 zu finden , würden Sie verwenden : SELECT * FROM [ Tabelle] WHERE Datum < '01 /01/2011 ' . Analoges gilt für die größer oder gleich Vergleiche. Daten vergleichen mit dieser Methode tut Konto für Zeitwerte in einen datetime -Datentyp gespeichert , wenn Sie wollen, dass alles vor Mittag zu einem bestimmten Zeitpunkt ist, lesen Sie beinhalten, dass in dem Abschnitt nach dem Vergleich sign.