Поиск недели месяца по дате в блоках данных SQL
Я пытаюсь получить week_of_the_month из даты в databricks sql
Вот мой SQL:
with date as (
select EXTRACT(DAY FROM '2017-01-01') as day
)
select case
when day < 8 then '1'
when day < 15 then '2'
when day < 22 then '3'
else '4'
end as week_of_month
Вышеприведенный sql терпит неудачу в некоторых крайних случаях. Например
2010-03-31
, то
week_of_month = 5
Как найти неделю_из_месяца в блоках данных SQL?
1 ответ
Как вы выразились, вы бы добавили еще один
when
пункт
select case
when day < 8 then '1'
when day < 15 then '2'
when day < 22 then '3'
when day < 29 then '4' --> new
else '5' --> modified
end as week_of_month