在视图中使用的Datepart week start Monday



我试图在构造视图的SELECT查询中使用DATEPART函数。DATEPART的目的是返回传递给它的日期的周数。我要求一周的开始是星期一,默认情况下是星期天。我不能使用Set DATEFIRST 1,因为我想在视图中使用Datepart。

。让我们使用日期'2021-01-31'作为[date]

DATEPART(WEEK,DATE) --returns week 6 with @@DATEFIRST = 7
DATEPART(WEEK,DATE) --returns week 5 with @@DATEFIRST = 1

请大家多多指教。

我可以提供这样的解决方案:

declare
@DATE date='2021-01-31'
select DATEPART(WEEK,@DATE) --returns week 6 with @@DATEFIRST = 7
,DATEPART(WEEK,case when datepart(dw, @DATE)=1 then dateadd(dd, -1, @DATE) else @DATE end) --returns week 5 with @@DATEFIRST = 1

相关内容

  • 没有找到相关文章

最新更新