Come calcolare l’intervallo fra due date con MySQL DATEDIFF
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 è sufficiente che le date siano memorizzate con valori consentiti per la data. Il relativo output è quindi un valore positivo o negativo, a seconda che l’intervallo richiesto sia in ordine cronologico o meno.
La sintassi di MySQL DATEDIFF
La sintassi di MySQL DATEDIFF è molto semplice. Se desiderate imparare a utilizzare MySQL, segnatevi semplicemente il seguente comando:
SELECT DATEDIFF ("Espressione1", "Espressione2")
bash"Espressione1" è la prima data, mentre "Espressione2" è la seconda.
Esempio con MySQL DATEDIFF
Un semplice esempio vi farà capire rapidamente il funzionamento di MySQL DATEDIFF:
SELECT DATEDIFF ("2022-01-27", "2022-01-17");
bashL’esecuzione di questo comando dà il seguente output:
DATEDIFF ("2022-01-27", "2022-01-17")
10
bashMySQL DATEDIFF per indicazioni temporali più lunghe
MySQL DATEDIFF funziona anche con indicazioni temporali più lunghe e filtra soltanto le informazioni rilevanti; pertanto, se scegliete di indicare rispettivamente data e ora, MySQL DATEDIFF tiene conto esclusivamente delle due informazioni indicate. Ad esempio, il comando si presenta così:
SELECT DATEDIFF ("2022-01-27 14:22:43", "2022-01-17 20:19:35");
bashIn questo caso, l’output è di nuovo “10”.
Esempio per un valore negativo
È comunque possibile utilizzare MySQL DATEDIFF anche chiedendo prima la data meno recente e successivamente quella più recente. In questo caso, otterrete un valore negativo. Il comando si presenta così:
SELECT DATEDIFF ("2022-01-01", "2022-01-30");
bashL’output per questo esempio è il seguente:
DATEDIFF ("2022-01-01", "2022-01-30")
-29
bash