我的日期格式是 20060825
日期是变化的 20060826,20060827,20060828.....
但我要取到这一周星期日的时间
请教大家该怎么用?

解决方案 »

  1.   

    SELECT convert(varchar(10),dateadd(day,7,DATEADD(wk, DATEDIFF(wk,0,dateadd(ms,-3,getdate())), 0)),112)
      

  2.   

    如果默认周日为一周的第一天:set datefirst 0
    select dateadd(day,-datepart(dw,getdate()),getdate())反之:
    set datefirst 0
    select dateadd(day,7-datepart(dw,getdate()),getdate())
      

  3.   

    where datepart(weekday,cast(日期 as datetime))=1
      

  4.   

    select dateadd(day,1-datepart(dw,getdate()),getdate())
      

  5.   

    20060825 :這個星期天是指20060827 還是 20060820 ?
    --------------------------------------------------
    --1: 
    declare @date varchar(08)
    set @date ='20060825'
    select  convert(char(08),dateadd(dd,8-datepart(dw,@date),@date),112)
    /*20060827*/--2:
    declare @date varchar(08)
    set @date ='20060825'
    select  convert(char(08),dateadd(dd,1-datepart(dw,@date),@date),112)
    /*20060820*/