Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Menjana Siri Tarikh dalam Amazon Redshift Tanpa generate_series()?

Bagaimana untuk Menjana Siri Tarikh dalam Amazon Redshift Tanpa generate_series()?

Patricia Arquette
Lepaskan: 2024-12-26 14:55:09
asal
408 orang telah melayarinya

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

Menjana Siri dalam Redshift

Amazon Redshift adalah berdasarkan versi lama PostgreSQL (8.0.2) yang tidak mempunyai sokongan untuk generate_series( ) berfungsi apabila berurusan dengan cap masa. Percubaan untuk menggunakan fungsi dengan tarikh, seperti:

select * from generate_series(date('2008-10-01'),date('2008-10-10 00:00:00'),1)
Salin selepas log masuk

akan mengakibatkan ralat.

Penyelesaian

Walaupun kekurangan arahan langsung sokongan untuk generate_series() dengan cap masa, terdapat beberapa penyelesaian:

1. Aritmetik Tarikh Semasa:

SELECT current_date + (n || ' days')::interval
from generate_series (1, 30) n
Salin selepas log masuk

Pendekatan ini, yang berfungsi dalam PostgreSQL 8.3 dan lebih baru, menggunakan aritmetik tarikh ringkas untuk menjana satu siri tarikh.

2. Jadual Integer:

Buat jadual integer yang boleh digunakan untuk aritmetik tarikh:

create table integers (
  n integer primary key
);
Salin selepas log masuk

Isi jadual dan gunakannya untuk pengiraan tarikh:

select (current_date + n)
from integers
where n < 31;
Salin selepas log masuk

Nota: Redshift tidak menyokong jenis data selang, jadi perkara di atas penyelesaian mungkin tidak tersedia dalam semua kes.

Atas ialah kandungan terperinci Bagaimana untuk Menjana Siri Tarikh dalam Amazon Redshift Tanpa generate_series()?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan