SQL Academy
Premium
Funktionsreferenz

MAKE_INTERVAL

Erstellt ein Intervall aus Jahren, Monaten, Wochen, Tagen, Stunden, Minuten und Sekunden.

PostgreSQL 17.5
MAKE_INTERVAL([years[, months[, weeks[, days[, hours[, mins[, secs]]]]]]])

Parameter

yearsintegeroptional
Anzahl der Jahre, standardmäßig 0
monthsintegeroptional
Anzahl der Monate, standardmäßig 0
weeksintegeroptional
Anzahl der Wochen, standardmäßig 0
daysintegeroptional
Anzahl der Tage, standardmäßig 0
hoursintegeroptional
Anzahl der Stunden, standardmäßig 0
minsintegeroptional
Anzahl der Minuten, standardmäßig 0
secsdouble precisionoptional
Anzahl der Sekunden, kann Nachkommastellen haben, standardmäßig 0

Rückgabewert

Intervall (interval); Wochen werden in Tage umgerechnet, Sekunden in Stunden und Minuten

Beispiele

Intervall aus einem benannten Argument

PostgreSQL 17.5
SELECT MAKE_INTERVAL(days => 10);
make_interval
10 days

Intervall aus Sekunden

PostgreSQL 17.5
SELECT MAKE_INTERVAL(0, 0, 0, 0, 0, 0, 3661);
make_interval
01:01:01

Zeitpunkt in zwei Wochen

PostgreSQL 17.5
SELECT CURRENT_DATE + MAKE_INTERVAL(weeks => 2) AS in_two_weeks;

Details

Die Argumente übergibst du bequem per Name: MAKE_INTERVAL(days => 10). Ein Datum plus ein Intervall ergibt ein Datum mit Uhrzeit, deshalb gibt CURRENT_DATE + MAKE_INTERVAL(weeks => 2) den Zeitpunkt 00:00 in zwei Wochen zurück.

Siehe auch