Sql 在黑斑羚中找到一周
我想在黑斑羚上打印2020-03-01是在3月的第一周。 这在黑斑羚身上怎么可能?我只找到了weekofyear()。我找到了Sql 在黑斑羚中找到一周,sql,impala,hue,Sql,Impala,Hue,我想在黑斑羚上打印2020-03-01是在3月的第一周。 这在黑斑羚身上怎么可能?我只找到了weekofyear()。我找到了 ceil(cast(substr(ingestion_date,7,2) as int)/7) as wmonth 我采取的步骤是: 子字符串日期以仅获取日期 将其转换为int 除以7 结果 如果“每月的一周”是指第一周是第1-7天,第二周是第8-14天,依此类推,那么您可以使用: select ceiling( day(ingestion_date) / 7.0
ceil(cast(substr(ingestion_date,7,2) as int)/7) as wmonth
我采取的步骤是:
- 子字符串日期以仅获取日期
- 将其转换为int
- 除以7
- 结果
select ceiling( day(ingestion_date) / 7.0 ) as week_of_month
类似于:
weekofyear(column)-weekofyear(YEAR(column)+MONTH(column)+“1”)+1
@jarlh谢谢你的回答。尽管出现了这种情况:算术运算需要数字操作数。我不确定黑斑羚是否能理解+'1'并将其视为伪代码。我不知道如何“建立”一月份的第一个日期。是的,确实如此,我认为这与我上面的答案是一样的。@DrGenius。这应该会产生同样的结果。但是,它不需要将日期转换为字符串,也不使用隐式转换为int,并且只使用算术和适当的date
函数。