我想使用Redshift来计算给定时间范围内的星期一数。我尝试过使用date_part,它返回星期几。我不能使用简单的计数,因为同一天有多个实例。
答案 0 :(得分:0)
如果你有日期表参考,你可以使用以下代码
select count(distinct my_table.date)
from my_table
where
date_part(dow,my_table.date)=1
and my_table.date between '2015-01-01' and '2016-01-01'
在这种情况下,查询将计算2015年的所有星期一,
您可以更改当天的日期范围。
date_part(dow,my_table.date)=1 -- Monday
date_part(dow,my_table.date)=2 -- Tuesday
等等
如果您没有日期表,则应创建笛卡尔积