Con MySQL DATEDIFF potete ottenere come output il numero di giorni fra due date. I valori possono essere positivi o negativi.

Che cos’è MySQL DATEDIFF?

Per poter lavorare con MySQL in modo ancora più mirato, è opportuno conoscere alcune funzioni per date e tempi. Uno dei comandi più utili del sistema di gestione di database, oltre a MySQL DATE, è la funzione MySQL DATEDIFF, che permette di ottenere come output il numero di giorni fra due date. A tal fine è suf­fi­cien­te che le date siano me­mo­riz­za­te con valori con­sen­ti­ti per la data. Il relativo output è quindi un valore positivo o negativo, a seconda che l’in­ter­val­lo richiesto sia in ordine cro­no­lo­gi­co o meno.

La sintassi di MySQL DATEDIFF

La sintassi di MySQL DATEDIFF è molto semplice. Se de­si­de­ra­te imparare a uti­liz­za­re MySQL, segnatevi sem­pli­ce­men­te il seguente comando:

SELECT DATEDIFF ("Espressione1", "Espressione2")
bash

"Espres­sio­ne1" è la prima data, mentre "Espres­sio­ne2" è la seconda.

Esempio con MySQL DATEDIFF

Un semplice esempio vi farà capire ra­pi­da­men­te il fun­zio­na­men­to di MySQL DATEDIFF:

SELECT DATEDIFF ("2022-01-27", "2022-01-17");
bash

L’ese­cu­zio­ne di questo comando dà il seguente output:

DATEDIFF ("2022-01-27", "2022-01-17")
10
bash

MySQL DATEDIFF per in­di­ca­zio­ni temporali più lunghe

MySQL DATEDIFF funziona anche con in­di­ca­zio­ni temporali più lunghe e filtra soltanto le in­for­ma­zio­ni rilevanti; pertanto, se scegliete di indicare ri­spet­ti­va­men­te data e ora, MySQL DATEDIFF tiene conto esclu­si­va­men­te delle due in­for­ma­zio­ni indicate. Ad esempio, il comando si presenta così:

SELECT DATEDIFF ("2022-01-27 14:22:43", "2022-01-17 20:19:35");
bash

In questo caso, l’output è di nuovo “10”.

Esempio per un valore negativo

È comunque possibile uti­liz­za­re MySQL DATEDIFF anche chiedendo prima la data meno recente e suc­ces­si­va­men­te quella più recente. In questo caso, otterrete un valore negativo. Il comando si presenta così:

SELECT DATEDIFF ("2022-01-01", "2022-01-30");
bash

L’output per questo esempio è il seguente:

DATEDIFF ("2022-01-01", "2022-01-30")
-29
bash
Vai al menu prin­ci­pa­le