【问题标题】:Get Weeks start date when week start is different year and week end is different year当周开始不同的年份和周末不同的年份时获取周开始日期
【发布时间】:2013-12-30 17:47:48
【问题描述】:

今天是 2013 年 12 月 30 日,在我的 sql server 中,周从星期日开始。平均周从 2013 年 12 月 29 日开始 周末结束日期是 2014 年 4 月 1 日星期六。

我想要使用结束日期 4-1-2014 的星期开始日期。当日期是不同年份的两个时,有什么方法可以找到星期开始日期。

当年份相同时,我得到了一周的开始日期和结束日期。但是我想要两个年份不同的星期开始日期。

【问题讨论】:

    标签: sql-server-2005 sql-server-2008-r2


    【解决方案1】:

    只减去结束日期的天数,例如:

     SELECT GETDATE() - 7
    

    如果将 GETDATE() 替换为日期时间列或 @VARIABLE,则添加 (+/-) 天数相同

    【讨论】:

    • 我想要使用结束日期的星期开始日期
    【解决方案2】:
    DECLARE @date DATE; 
    SET @date = '20140104';
    
    SELECT DATEADD(dd, -(DATEPART(dw, @date)-1), @date) [Week Start],
           DATEADD(dd, 7-(DATEPART(dw, @date)), @date) [WeekEnd]
    

    结果

    ╔════════════╦════════════╗
    ║ Week Start ║  WeekEnd   ║
    ╠════════════╬════════════╣
    ║ 2013-12-29 ║ 2014-01-04 ║
    ╚════════════╩════════════╝
    

    【讨论】:

      猜你喜欢
      • 2020-12-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多