我需要为报告创建一个空的时间表系列,以便我可以将多个表中的连接活动留给它。一天中的每个小时都不一定有数据,但我希望它显示空或零表示不活动,而不是省略一天中的那个小时。
在更高版本的 Postgres(8.0.2 之后)中,这在几个方面很容易:
SELECT unnest(array[0,1,2,3,4...]) as numbers
或者
CROSS JOIN (select generate_series as hours
from generate_series(now()::timestamp,
now()::timestamp + interval '1 day',
'1 hour'::interval
)) date_series
Redshift 可以运行其中一些命令,但是当您尝试将它与任何表一起运行时会引发错误。
我需要的:
生成一系列数字(例如 0-23)作为将在 redshift 上运行的子查询的可靠方法(使用 postgres 8.0.2)。