在 Impala 中查找一个月中的第几周

Find the week of month in Impala

我想在 impala 中打印 2020-03-01 是三月的第一周。 Impala 这怎么可能?我设法只找到了 weekofyear()。

我想通了,

ceil(cast(substr(ingestion_date,7,2) as int)/7) as wmonth

我做的步骤:

  • 对日期进行子串以仅取日期
  • 将其转换为整数
  • 除以 7
  • ceil结果

如果“每月的第几周”是指第一周是第 1-7 天,第二周是第 8-14 天,依此类推,那么您可以使用:

select ceiling( day(ingestion_date) / 7.0 ) as week_of_month