Heim > Datenbank > MySQL-Tutorial > Wie generiert man effizient Zeitreihen zwischen Datumsangaben in PostgreSQL?

Wie generiert man effizient Zeitreihen zwischen Datumsangaben in PostgreSQL?

Susan Sarandon
Freigeben: 2025-01-21 16:51:08
Original
262 Leute haben es durchsucht

How to Efficiently Generate Time Series Between Dates in PostgreSQL?

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>
Nach dem Login kopieren

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>
Nach dem Login kopieren

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!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage