sql / intermediate
Snippet
Datumsberechnungen mit dem Datentyp INTERVAL durchführen
ANSI SQL bietet den Datentyp INTERVAL zur Darstellung zeitlicher Spannen. Die Kombination von Zeitstempeln oder Datumsangaben mit INTERVAL-Werten ermöglicht eine saubere, standardisierte Datumsarithmetik in Abfragen.
snippet.sql
sql
1
2
3
4
5
SELECT subscription_id,start_date,start_date + INTERVAL '30' DAY AS renewal_dateFROM subscriptionsWHERE start_date + INTERVAL '1' YEAR > CURRENT_DATE;
Erklärung
1
SELECT subscription_id,
Wählt die Identifikationsspalte aus der Tabelle 'subscriptions' aus.
2
start_date,
Ruft das ursprüngliche Startdatum des Benutzerabonnements ab.
3
start_date + INTERVAL '30' DAY AS renewal_date
Addiert eine Zeitdauer von 30 Tagen zum Startdatum unter Verwendung des ANSI SQL INTERVAL-Typs.
4
FROM subscriptions
Gibt 'subscriptions' als Zieltabelle an.
5
WHERE start_date + INTERVAL '1' YEAR > CURRENT_DATE;
Filtert nach aktiven Abonnements, die innerhalb des letzten Jahres im Vergleich zum aktuellen Datum begonnen haben.