Delen via


DATEDIFF (SSIS Expression)

van toepassing op:SQL Server SSIS Integration Runtime in Azure Data Factory

Retourneert het aantal datum- en tijdgrenzen dat is gekruist tussen twee opgegeven datums. De parameter datepart geeft aan welke datum- en tijdgrenzen moeten worden vergeleken.

Syntaxis

  
DATEDIFF(datepart, startdate, endate)  

Arguments

datepart
Is de parameter waarmee wordt opgegeven voor welk deel van de datum een waarde moet worden vergeleken en geretourneerd.

startdate
Is de begindatum van het interval.

endate
Is de einddatum van het interval.

Resultaattypen

DT_I4

Opmerkingen

De volgende tabel bevat de datumonderdelen en afkortingen die worden herkend door de expressie-evaluator.

Datumonderdeel Abbreviations
Jaar yyy, jjjj
Kwartaal qq, q
Maand mm, m
Dag van het jaar dy, y
Day dd, d
Week wk, ww
Weekdag dw, w
Uur Hh
Minuut mi, n
Second ss, s
Milliseconde Mevrouw

DATEDIFF retourneert een null-resultaat als een van de argumenten null is.

Een letterlijke datum moet expliciet worden omgezet in een van de datumgegevenstypen. Zie Integration Services-gegevenstypenvoor meer informatie.

Er treedt een fout op als een datum ongeldig is, als de datum of tijdeenheid geen tekenreeks is, als de begindatum geen datum is of als de einddatum geen datum is.

Als de einddatum ouder is dan de begindatum, retourneert de functie een negatief getal. Als de begin- en einddatum gelijk zijn aan of binnen hetzelfde interval vallen, retourneert de functie nul.

Voorbeelden van SSIS-expressies

In dit voorbeeld wordt het aantal dagen tussen twee letterlijke datums berekend. Als de datum de notatie mm/dd/jjjj heeft, retourneert de functie 7.

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

In dit voorbeeld wordt het aantal maanden tussen een letterlijke datum en de huidige datum geretourneerd.

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

In dit voorbeeld wordt het aantal weken tussen de datum in de kolom ModifiedDate en de variabele YearEndDate geretourneerd. Als YearEndDate een datumtype heeft, is er geen expliciete casting vereist.

DATEDIFF("Week", ModifiedDate,@YearEndDate)  

Zie ook

DATEADD (SSIS-expressie)
DATEPART (SSIS Expression)
DAY (SSIS-expressie)
MONTH (SSIS-expressie)
YEAR (SSIS-Expressie)
Functies (SSIS-Expressie)