Funzione SQL Server DateADD

Funzione SQL Server DateADD

I dati di data e ora sono comuni in SQL Server e ci sono tipi di dati integrati per la data e l'orario. SQL Server fornisce anche diverse funzioni per lavorare con tipi di date.

Questa breve ma dettagliata guida ti insegnerà come utilizzare la funzione DateADD nelle funzioni, query e procedure SQL Server.

Le basi

La funzione DateADD SQL Server consente di aggiungere o sottrarre un'unità di data specifica alla data specificata e restituire la data risultante.

Possiamo esprimere la sintassi della funzione DateEadd come:

dateADD ([unit_of_time] [valore] [target_date]);

Come mostrato nella sintassi sopra, la funzione accetta tre argomenti principali:

  1. Unità_of_time-Il primo argomento rappresenta l'unità di tempo da aggiungere alla data specificata.
  2. Valore-L'argomento del valore rappresenta il numero aggiunto o sottratto alla data di destinazione. Questo è un valore di tipo intero; Quindi, la funzione troncerà se il valore fornito è un tipo decimale o galleggiante.
  3. Target_date-Questo argomento rappresenta la data da cui aggiungere o sottrarre il valore specificato. Questo può essere un valore di data letterale o un'espressione dalle funzioni della data del server SQL.

La funzione accetta un valore specifico per il parametro dell'unità di tempo. I valori accettati sono come mostrato nella tabella seguente:

abbreviazione dell'unità
-------------------------------------------------- ------------
nanosecondi NS
Microsecondi MCS
millisecondo MS
Second S, SS
Minuto mi, n
Ora hh
Settimana WK, WW
Giorno dd, d
Giorno dell'anno, dy, y
Mese mm, m
Quarto QQ, Q
ANNO YY, YYYY
(12 righe interessate)

La funzione aggiungerà quindi un valore della data dopo aver aggiunto o sottratto il valore dell'unità specifico dalla data di destinazione.

SQL Server Dateedd Esempio di utilizzo

Utilizziamo ora vari esempi per capire come utilizzare la funzione DateADD in SQL Server.

Esempio 1

La query seguente aggiunge un secondo alla data specificata.

Seleziona Dateedd (secondo, 1, '2021-12-24 23:59:59');

Il valore risultante è come mostrato:

2021-12-25 00:00:00.000

Esempio 2

Aggiungiamo un anno dalla data di oggi. Possiamo eseguire una query come mostrato di seguito:

Seleziona DateAdd (anno, 1, current_timestamp);

La query sopra aggiungerà un anno al timestamp attuale. Un valore di esempio di esempio è come:

2022-12-19 15:14:13.883

Esempio 3

Possiamo anche sottrarre un'unità di tempo specifica dalla data di destinazione. Considera la query di esempio come mostrato:

Seleziona DateAdd (anno, -5, current_timestamp);

L'esempio sopra sottrae 5 anni dall'attuale timestamp.

Il valore risultante è come:

2016-12-19 15:16:07.970

Esempio 4

Cosa succede se aggiungi un mese e la data risultante non esiste. In tal caso, la funzione DateEadd tornerà l'ultimo giorno del mese.

Una domanda di esempio come:

Seleziona Dateedd (mese, 4, '2022-05-31 00: 00: 00: 000');

Poiché non c'è 31 settembre, la query restituisce il 30 settembre come:

2022-09-30 00:00:00.000

Esempio 5

Aggiungi un'ora a una data target e ottieni il risultato.

Seleziona DateADD (ora, 1, '2022-06-30 00: 00: 00: 000');

Il valore risultante è come:

2022-06-30 01:00:00.000

Esempio 6

È inoltre possibile utilizzare la funzione DateADD per trovare la differenza tra due date e il valore del tempo. Per esempio:

Seleziona Dateedd (Minute, Datediff (Minute, '2016-12-31 05: 39: 39: 100', '2022-06-27 01: 35: 33: 333'), 0);

Il valore risultante è come:

1905-06-27 19:56:00.000

Pensieri finali

In questa guida, si capisce come utilizzare la funzione DateADD SQL Server utilizzando vari esempi. La funzione DateADD è molto utile quando si manipolano i dati della data e dell'ora in SQL Server.

Resta sintonizzato per ulteriori contenuti SQL Server.