Heim > Datenbank > MySQL-Tutorial > Wie erstelle ich Datumsreihen in Amazon Redshift ohne generic_series()?

Wie erstelle ich Datumsreihen in Amazon Redshift ohne generic_series()?

Patricia Arquette
Freigeben: 2024-12-26 14:55:09
Original
479 Leute haben es durchsucht

How to Generate Date Series in Amazon Redshift Without generate_series()?

Serien in Redshift generieren

Amazon Redshift basiert auf einer älteren Version von PostgreSQL (8.0.2), die keine Unterstützung für generic_series( )-Funktion beim Umgang mit Zeitstempeln. Versuche, die Funktion mit Datumsangaben zu verwenden, wie zum Beispiel:

select * from generate_series(date('2008-10-01'),date('2008-10-10 00:00:00'),1)
Nach dem Login kopieren

führen zu einem Fehler.

Problemumgehungen

Trotz des Fehlens direkter Unterstützung für generic_series() mit Zeitstempeln, es gibt einige Problemumgehungen:

1. Aktuelle Datumsarithmetik:

SELECT current_date + (n || ' days')::interval
from generate_series (1, 30) n
Nach dem Login kopieren

Dieser Ansatz, der in PostgreSQL 8.3 und höher funktioniert, verwendet einfache Datumsarithmetik, um eine Reihe von Datumsangaben zu generieren.

2. Ganzzahltabelle:

Erstellen Sie eine Tabelle mit Ganzzahlen, die für die Datumsarithmetik verwendet werden können:

create table integers (
  n integer primary key
);
Nach dem Login kopieren

Füllen Sie die Tabelle aus und verwenden Sie sie für Datumsberechnungen:

select (current_date + n)
from integers
where n < 31;
Nach dem Login kopieren

Hinweis: Redshift unterstützt den Intervalldatentyp nicht, daher sind die oben genannten Problemumgehungen möglicherweise nicht möglich in allen Fällen verfügbar.

Das obige ist der detaillierte Inhalt vonWie erstelle ich Datumsreihen in Amazon Redshift ohne generic_series()?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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