Freigeben über


DATEDIFF (SSIS-Ausdruck)

Gibt die Anzahl von Datums- und Zeiteinheiten zurück, die zwischen zwei angegebenen Daten überschritten wurden. Der datepart-Parameter identifiziert, welche Datums- und Zeiteinheiten verglichen werden sollen.

Syntax

DATEDIFF(datepart, startdate, endate)

Argumente

  • datepart
    Der Parameter, der angibt, welche Datumseinheit verglichen und für welche Datumseinheit ein Wert zurückgegeben werden soll.

  • startdate
    Das Startdatum des Intervalls.

  • endate
    Das Enddatum des Intervalls.

Ergebnistypen

DT_I4

Hinweise

In der folgenden Tabelle sind die datepart-Werte und Abkürzungen aufgeführt, die von der Ausdrucksauswertung erkannt werden.

Datumseinheit

Abkürzungen

Year

yy, yyyy

Quartal

qq, q

Monat

mm, m

Dayofyear

dy, y

Day

dd, d

Week

wk, ww

Arbeitstag

dw, w

Stunde

Hh

Minute

mi, n

Sekunde

ss, s

Millisekunde

Ms

DATEDIFF gibt ein NULL-Ergebnis zurück, wenn eines der Argumente NULL ist.

Ein Datumsliteral muss explizit in einen der date-Datentypen umgewandelt werden. Weitere Informationen finden Sie unter SQL Server Integration Services-Datentypen.

Ein Fehler tritt auf, wenn ein Datum ungültig ist, die Datums- oder Zeiteinheit keine Zeichenfolge ist, das Startdatum kein Datum ist oder das Enddatum kein Datum ist.

Wenn das Enddatum vor dem Startdatum liegt, gibt die Funktion eine negative Zahl zurück. Wenn das Startdatum und das Enddatum identisch sind oder im gleichen Zeitraum liegen, gibt die Funktion Null zurück.

Beispiele für SSIS-Ausdrücke

In diesem Beispiel wird die Anzahl von Tagen zwischen zwei Datumsliteralen berechnet. Falls das Datum das Format "mm/dd/yyyy" aufweist, wird 7 zurückgegeben.

DATEDIFF("dd", (DT_DBTIMESTAMP)"8/1/2003", (DT_DBTIMESTAMP)"8/8/2003")

In diesem Beispiel wird die Anzahl von Monaten zwischen einem Datumsliteral und dem aktuellen Datum zurückgegeben.

DATEDIFF("mm", (DT_DBTIMESTAMP)"8/1/2003",GETDATE())

In diesem Beispiel wird die Anzahl von Wochen zwischen dem Datum in der ModifiedDate-Spalte und der YearEndDate-Variablen zurückgegeben. Falls YearEndDate einen date-Datentyp aufweist, ist keine explizite Umwandlung erforderlich.

DATEDIFF("Week", ModifiedDate,@YearEndDate)

Siehe auch

Verweis

DATEADD (SSIS-Ausdruck)

DATEPART (SSIS-Ausdruck)

DAY (SSIS-Ausdruck)

MONTH (SSIS-Ausdruck)

YEAR (SSIS-Ausdruck)

Andere Ressourcen

Funktionen (SSIS-Ausdruck)