PostgreSQL-Methode zur Generierung von Datumsintervall-Zeitreihen
Wenn PostgreSQL Zeitreihendaten verarbeitet, ist es oft notwendig, eine Reihe von Daten zwischen zwei gegebenen Daten zu generieren. Eine gängige Methode ist die Verwendung der Funktion generate_series()
.
<code class="language-sql">select date '2004-03-07' + j - i as AllDate from generate_series(0, extract(doy from date '2004-03-07')::int - 1) as i, generate_series(0, extract(doy from date '2004-08-16')::int - 1) as j</code>
Dieser Ansatz stößt jedoch manchmal auf Einschränkungen, wenn es um Daten geht, die sich über mehrere Jahre erstrecken. Um diese Situation effektiv zu lösen, beachten Sie Folgendes:
<code class="language-sql">SELECT date_trunc('day', dd):: date FROM generate_series ( '2007-02-01'::timestamp , '2008-04-01'::timestamp , '1 day'::interval) dd ;</code>
Diese Abfrage generiert einen Datumsbereich zwischen den angegebenen Zeitstempeln und konvertiert sie in ein erkanntes Datumsformat, bevor sie zurückgegeben wird. Die Genauigkeit bleibt auch dann erhalten, wenn sich zwei Daten über mehrere Jahre erstrecken.
Das obige ist der detaillierte Inhalt vonWie generiert man effizient Zeitreihen zwischen Datumsangaben in PostgreSQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!