SQL Server -DateAdd -Funktion

SQL Server -DateAdd -Funktion

Datums- und Uhrzeitdaten sind auf SQL Server üblich, und es gibt integrierte Datentypen für Datum und Uhrzeit. SQL Server bietet auch mehrere Funktionen für die Arbeit mit Datumstypen.

In diesem kurzen, aber detaillierten Leitfaden werden Sie vermitteln, wie Sie die DATEADD -Funktion in SQL -Serverfunktionen, Abfragen und Verfahren verwenden.

Die Grundlagen

Mit der SQL Server -DateAdd -Funktion können Sie eine bestimmte Datumseinheit zum angegebenen Datum hinzufügen oder abziehen und das resultierende Datum zurückgeben.

Wir können die Syntax der DATEADD -Funktion als:

DATEADD ([UNIT_OF_TIME] [Wert] [target_date]);

Wie in der obigen Syntax gezeigt, akzeptiert die Funktion drei Hauptargumente:

  1. UNIT_OF_TIME-Das erste Argument stellt die Zeiteinheit dar, um das angegebene Datum hinzuzufügen.
  2. Wert-Das Wertargument repräsentiert die Zahl, die zum Zieldatum hinzugefügt oder subtrahiert wird. Dies ist ein ganzzahliger Wert. Daher wird die Funktion abgeschnitten, wenn der bereitgestellte Wert ein Dezimal- oder Schwimmertyp ist.
  3. Zieltermin-Dieses Argument repräsentiert das Datum, aus dem der angegebene Wert hinzugefügt oder subtrahiert werden kann. Dies kann ein wörtlicher Datumswert oder ein Ausdruck aus SQL Server -Datumsfunktionen sein.

Die Funktion akzeptiert einen bestimmten Wert für das Zeitparameter der Zeiteinheit. Akzeptierte Werte sind wie in der folgenden Tabelle gezeigt:

Abkürzung der Einheit
-------------------------------------------------- ------------
Nanosekunden ns
Mikrosekunde MCS
Millisekunden MS
Zweite s, ss
Minute mi, n
Stunde HH
Woche WK, ww
Tag DD, D
Tag des Jahres, Dy, y
Monat mm, m
Viertel QQ, q
Jahr YJ, jyjamme
(12 Zeilen betroffen)

Die Funktion fügt dann nach dem Hinzufügen oder Subtrahieren des spezifischen Einheitswerts vom Zieldatum einen Datumswert hinzu.

SQL Server -DateAdd -Beispielnutzung

Lassen Sie uns nun verschiedene Beispiele verwenden, um zu verstehen.

Beispiel 1

Die folgende Abfrage fügt dem angegebenen Datum eine Sekunde hinzu.

Wählen Sie DATEADD (Zweite, 1, 2021-12-24 23:59:59 ');

Der resultierende Wert ist wie gezeigt:

2021-12-25 00:00:00.000

Beispiel 2

Lassen Sie uns ein Jahr ab dem heutigen Datum hinzufügen. Wir können eine Abfrage wie unten gezeigt ausführen:

Wählen Sie DATEADD (Jahr, 1, current_timestamp);

Die obige Abfrage wird dem aktuellen Zeitstempel ein Jahr hinzufügen. Ein Beispielergebniswert ist wie:

2022-12-19 15:14:13.883

Beispiel 3

Wir können auch eine bestimmte Zeiteinheit vom Zieldatum abziehen. Betrachten Sie die Beispielabfrage wie gezeigt:

SELECT DATEADD (Jahr, -5, current_timestamp);

Das obige Beispiel subtrahiert 5 Jahre vom aktuellen Zeitstempel.

Der resultierende Wert ist wie:

2016-12-19 15:16:07.970

Beispiel 4

Was passiert, wenn Sie einen Monat hinzufügen und das resultierende Datum nicht vorhanden ist. In einem solchen Fall kehrt die DateAdd -Funktion am letzten Tag des Monats zurück.

Eine Beispielfrage als:

SELECT DATEADD (Monat, 4, '2022-05-31 00: 00: 00: 000');

Da es keine 31. September gibt, kehrt die Abfrage am 30. September als:

2022-09-30 00:00:00.000

Beispiel 5

Fügen Sie einem Zieldatum eine Stunde hinzu und erhalten Sie das Ergebnis.

Wählen Sie DATEADD (Stunde, 1, '2022-06-30 00: 00: 00: 000');

Der resultierende Wert ist wie:

2022-06-30 01:00:00.000

Beispiel 6

Sie können auch die DATEADD -Funktion verwenden, um die Differenz zwischen zwei Daten und Zeitwert zu ermitteln. Zum Beispiel:

SELECT DATEADD (Minute, datiff (Minute, 2016-12-31 05: 39: 39: 100 ',' 2022-06-27 01: 35: 33: 333 '), 0);

Der resultierende Wert ist wie:

1905-06-27 19:56:00.000

Abschließende Gedanken

In diesem Handbuch verstehen Sie, wie Sie die SQL Server -DateAdD -Funktion anhand verschiedener Beispiele verwenden. Die DateAdD.

Bleiben Sie auf dem Laufenden, um weitere SQL -Serverinhalte zu erhalten.