So führen Sie Datumsberechnungen durch, bei denen das Jahr ignoriert wird
Um Daten auszuwählen, die innerhalb der nächsten 14 Tage, mit Ausnahme des Jahres, einen Jahrestag haben, berücksichtigen Sie Folgendes unter Verwendung des folgenden Ansatzes:
SELECT * FROM event WHERE f_mmdd(event_date) BETWEEN f_mmdd(current_date) AND f_mmdd(current_date + 14);
Diese Abfrage verwendet die Funktion f_mmdd(), um einen ganzzahligen Wert aus der MMDD zu berechnen Muster des Datums. Die resultierenden Werte werden zum Vergleich mit dem aktuellen Datum und einem Datum 14 Tage in der Zukunft verwendet.
Die Funktion f_mmdd() ist wie folgt definiert:
CREATE OR REPLACE FUNCTION f_mmdd(date) RETURNS int LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT AS 'SELECT EXTRACT(month FROM )::int * 100 + EXTRACT(day FROM )::int';
Diese Funktion ermöglicht die Erstellung eines mehrspaltigen Ausdrucksindex für die Spalte event_mmdd_event_date_idx zur Optimierung der Abfrageleistung.
Das obige ist der detaillierte Inhalt vonWie kann ich Datumsberechnungen durchführen und dabei das Jahr ignorieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!