DATEDIFF (výraz SSIS)

platí pro:SQL Server SSIS Integration Runtime ve službě Azure Data Factory

Vrátí počet hranic data a času překračovaných mezi dvěma zadanými daty. Parametr datepart určuje, jaké hranice data a času se mají porovnat.

Syntaxe

  
DATEDIFF(datepart, startdate, endate)  

Arguments

datepart
Je parametr, který určuje, která část data se má porovnat a vrátit hodnotu.

startdate
Je počáteční datum intervalu.

endate
Je koncové datum intervalu.

Typy výsledků

DT_I4

Poznámky

V následující tabulce jsou uvedeny části kalendářních dat a zkratky rozpoznané vyhodnocovačem výrazů.

Část datumu Abbreviations
Rok yy, yyyy
Čtvrtletí qq, q
Měsíc Mm, m
Den v roce dy, y
Day dd, d
Týden Wk, WW
Weekday DW, W
Hodina Hh
Minuta mi, n
Second SS, S
Milisekund Paní

Funkce DATEDIFF vrátí výsledek null, pokud je některý z argumentů null.

Literál data musí být explicitně přetypován na jeden z datových typů data. Další informace najdete v tématu datové typy integračních služeb.

K chybě dojde, pokud datum není platné, pokud datum nebo časová jednotka není řetězec, pokud počáteční datum není datum nebo pokud koncové datum není datum.

Pokud je koncové datum dřívější než počáteční datum, vrátí funkce záporné číslo. Pokud jsou počáteční a koncová data rovna nebo spadají do stejného intervalu, vrátí funkce nulu.

Příklady výrazů SSIS

Tento příklad vypočítá počet dní mezi dvěma literály kalendářních dat. Pokud je datum ve formátu "mm/dd/rrrr", vrátí funkce hodnotu 7.

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

Tento příklad vrátí počet měsíců mezi literálem kalendářního data a aktuálním datem.

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

Tento příklad vrátí počet týdnů mezi datem ve sloupci ModifiedDate a proměnnou YearEndDate . Pokud YearEndDate obsahuje datový typ date, nevyžaduje se explicitní přetypování.

DATEDIFF("Week", ModifiedDate,@YearEndDate)