繁体   English   中英

在SQL 2008中提供日期时获取一周的开始和结束日期

[英]Getting the starting and ending date of a week when a date is provided in SQL 2008

输入日期时,我需要星期的开始日期和结束日期。

注意:本周必须从星期日开始,到星期六结束

Select DATEADD(WEEK,DATEDIFF(WEEK,0,GETDATE()),0)-1 'Start date',
DATEADD(WEEK,DATEDIFF(WEEK,0,GETDATE())+1,0)-2 'End Date'

根据您的逻辑,“星期从星期日开始,在星期六结束”

select "start_of_week" = dateadd(week, datediff(week,0, GETDATE()),-1);
select "end_of_week" = dateadd(week, datediff(week,0, GETDATE()),5);

尝试这个:

SELECT GETDATE()-DATEPART(WEEKDAY,GETDATE())+1 AS StartOfWeek, GETDATE()+(7-DATEPART(WEEKDAY,GETDATE())) AS EndOfWeek

在这里, DATEPART(WEEKDAY,GETDATE())返回4(星期DATEPART(WEEKDAY,GETDATE()) )-[ 2014年6月18日,今天]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM