Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Funzione MONTHS_BETWEEN
MONTHS_BETWEEN determina il numero di mesi tra due date.
Se la prima data è posteriore alla seconda, il risultato è positivo, altrimenti è negativo.
Se uno degli argomenti è null, il risultato è NULL.
Sintassi
MONTHS_BETWEEN( date1, date2 )
Argomenti
- date1
-
Una colonna di tipo di dati
DATE
o un'espressione che restituisce un tipoDATE
. - date2
-
Una colonna di tipo di dati
DATE
o un'espressione che restituisce un tipoDATE
.
Tipo restituito
FLOAT8
La parte del numero intero del risultato è basata sulla differenza tra i valori di anno e di mese delle date. La parte frazionaria del risultato viene calcolata a partire dai valori di giorno e timestamp delle date e presuppone un mese di 31 giorni.
Se date1 e date2 contengono la stessa data in un mese (ad esempio, 15/01/14 e 15/02/14) o l'ultimo giorno del mese (ad esempio, 31/08/14 e 30/09/14), il risultato è un numero intero basato sui valori di anno e mese delle date, indipendentemente dalla corrispondenza o meno dell'eventuale parte di timestamp.
Esempi
L'esempio seguente restituisce i mesi tra il 18/01/1969 e il 18/03/1969:
select months_between('1969-01-18', '1969-03-18') as months;
months ---------- -2
L'esempio seguente restituisce i mesi tra il 18/01/1969 e il 18/01/1969:
select months_between('1969-01-18', '1969-01-18') as months;
months ---------- 0
L'esempio seguente restituisce i mesi tra la prima e l'ultima proiezione di un evento:
select eventname, min(starttime) as first_show, max(starttime) as last_show, months_between(max(starttime),min(starttime)) as month_diff from event group by eventname order by eventname limit 5;
eventname first_show last_show month_diff --------------------------------------------------------------------------- .38 Special 2008-01-21 19:30:00.0 2008-12-25 15:00:00.0 11.12 3 Doors Down 2008-01-03 15:00:00.0 2008-12-01 19:30:00.0 10.94 70s Soul Jam 2008-01-16 19:30:00.0 2008-12-07 14:00:00.0 10.7 A Bronx Tale 2008-01-21 19:00:00.0 2008-12-15 15:00:00.0 10.8 A Catered Affair 2008-01-08 19:30:00.0 2008-12-19 19:00:00.0 11.35