Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Funktion MONTHS_BETWEEN
MONTHS_BETWEEN bestimmt die Anzahl der Monate zwischen zwei Daten.
Wenn das erste Datum nach dem zweiten Datum liegt, ist das Ergebnis positiv, andernfalls ist es negativ.
Wenn eines der Argumente Null ist, ist das Ergebnis NULL.
Syntax
MONTHS_BETWEEN( date1, date2 )
Argumente
- date1
-
Eine Spalte vom Datentyp
DATE
oder ein Ausdruck, der implizit zu einemDATE
-Typ ausgewertet wird. - date2
-
Eine Spalte vom Datentyp
DATE
oder ein Ausdruck, der implizit zu einemDATE
-Typ ausgewertet wird.
Rückgabetyp
FLOAT8
Der ganzzahlige Teil des Ergebnisses basiert auf der Differenz zwischen den Jahr- und Monat-Werten der Datumsangaben. Der Bruchteil des Ergebnisses wird aus den Tag- und Zeitstempelwerten der Datumsangabe unter Zugrundelegung eines Monats mit 31 Tagen berechnet.
Wenn date1 und date2 beide das gleiche Datum in einem Monat (zum Beispiel 1/15/14 und 2/15/14) oder den letzten Tag des Monats (zum Beispiel 8/31/14 und 9/30/14) enthalten, ist das Ergebnis eine Ganzzahl auf der Grundlage der Jahr- und Monat-Werte der Daten, unabhängig davon, ob der Zeitstempelteil, falls vorhanden, übereinstimmt.
Beispiele
Das folgende Beispiel gibt die Monate zwischen 1/18/1969 und 3/18/1969 zurück.
select months_between('1969-01-18', '1969-03-18') as months;
months ---------- -2
Das folgende Beispiel gibt die Monate zwischen 18.01.1969 und 18.03.1969 zurück.
select months_between('1969-01-18', '1969-01-18') as months;
months ---------- 0
Das folgende Beispiel gibt die Monate zwischen dem ersten und der letzten Vorkommen eines Ereignisses zurück.
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