Condividi tramite


DATEADD (SSIS)

Restituisce un nuovo valore DT_DBTIMESTAMP dopo avere aggiunto alla parte specificata di una data un numero che rappresenta un intervallo di date o di ore. Il parametro number deve restituire un valore integer e il parametro date deve restituire una data valida.

Sintassi

DATEADD(datepart, number, date)

Argomenti

  • datepart
    Parametro che specifica la parte della data a cui aggiungere il numero.

  • number
    Valore utilizzato per incrementare il valore datepart. Deve essere un valore integer noto al momento dell'analisi dell'espressione.

  • date
    Espressione che restituisce una data valida o una stringa con formato di data.

Tipi restituiti

DT_DBTIMESTAMP

Osservazioni

Nella tabella seguente sono elencate le parti della data e le abbreviazioni riconosciute dall'analizzatore di espressioni. Per i nomi delle parti della data non viene fatta distinzione tra maiuscole e minuscole.

Parte della data

Abbreviazioni

Year

yy, yyyy

Quarter

qq, q

Month

mm, m

Dayofyear

dy, y

Day

dd, d

Week

wk, ww

Weekday

dw, w

Hour

Hh

Minute

mi, n

Second

ss, s

Millisecond

Ms

L'argomento number deve essere disponibile al momento dell'analisi dell'espressione. Può essere una costante o una variabile. Non è possibile utilizzare valori di colonna, perché tali valori non sono noti al momento dell'analisi dell'espressione.

L'argomento datepart deve essere racchiuso tra virgolette.

Per i valori letterali di data è necessario eseguire il cast esplicito a uno dei tipi di dati date. Per ulteriori informazioni, vedere Tipi di dati di Integration Services.

[!NOTA]

La convalida dell'espressione non riesce quando viene eseguito il cast esplicito di un valore letterale di data a uno di questi tipi di dati relativi alle date: DT_DBTIMESTAMPOFFSET, DT_DBTIMESTAMP2 e DT_DBTIME2.

Se l'argomento è Null, DATEADD restituirà Null.

Se la data non è valida, l'unità di data o tempo non è una stringa oppure l'incremento non è un valore integer statico, verrà generato un errore.

Esempi

In questo esempio viene aggiunto un mese alla data corrente.

DATEADD("Month", 1,GETDATE())

In questo esempio vengono aggiunti 21 giorni alle date nella colonna ModifiedDate.

DATEADD("day", 21, ModifiedDate)

In questo esempio vengono aggiunti 2 anni a un valore letterale data.

DATEADD("yyyy", 2, (DT_DBTIMESTAMP)"8/6/2003")