Ich würde gerne die Generate-Serie-Funktion in Rotverschiebung, aber waren nicht erfolgreich.Verwendung der SQL-Funktion generate_series() in Rotverschiebung
Die Redshift-Dokumentation besagt, dass sie nicht unterstützt wird. Der folgende Code funktioniert:
select *
from generate_series(1,10,1)
Ausgänge:
1
2
3
...
10
Ich mag würde das gleiche mit Daten zu tun. Ich habe eine Reihe von Variationen ausprobiert, darunter:
select *
from generate_series(date('2008-10-01'),date('2008-10-10 00:00:00'),1)
Kicks aus:
ERROR: function generate_series(date, date, integer) does not exist
Hint: No function matches the given name and argument types.
You may need to add explicit type casts. [SQL State=42883]
auch versucht:
select *
from generate_series('2008-10-01 00:00:00'::timestamp,
'2008-10-10 00:00:00'::timestamp,'1 day')
Und versucht:
select *
from generate_series(cast('2008-10-01 00:00:00' as datetime),
cast('2008-10-10 00:00:00' as datetime),'1 day')
beiden Kicks aus:
ERROR: function generate_series(timestamp without time zone, timestamp without time zone, "unknown") does not exist
Hint: No function matches the given name and argument types.
You may need to add explicit type casts. [SQL State=42883]
Wenn sieht nicht, wie ich diesen Code aus einem anderen Beitrag verwenden werden:
SELECT to_char(DATE '2008-01-01'
+ (interval '1 month' * generate_series(0,57)), 'YYYY-MM-DD') AS ym
PostgreSQL generate_series() with SQL function as arguments
Führen Sie 'SELECT version()' für Ihre Datenbank aus, um Ihre Version von Postgres abzurufen. –
Für eine Problemumgehung finden Sie unter: http://Stackoverflow.com/a/34167753/3019685 – systemjack
Ich habe eine Problemumgehung in einer ähnlichen Frage hier https://StackOverflow.com/Questions/22759980/generate-series-method-fails- in-redshift – AlexYes