Convert(Datetime,GetDate(),2)
GetDate()得到今天日期2007-03-26 16:14:12.1871.现在我需要得到只是日期部分,时间部分不要,SQL怎么写?
2.求以下日期SQL:
昨天 
明天
最近七天
随后七天
上周
本周
下周
上月
本月
下月请高手帮忙。谢谢

解决方案 »

  1.   

    1.现在我需要得到只是日期部分,时间部分不要,SQL怎么写?
    select convert(varchar(10),getdate(),120)
      

  2.   

    --1.
    Select Convert(Varchar(10), GetDate(), 120)
    Select Convert(Varchar(10), GetDate(), 121)
      

  3.   

    2.求以下日期SQL:
    昨天 
    select convert(varchar(10),getdate() - 1,120)
    明天
    select convert(varchar(10),getdate() + 1,120)
    最近七天
    select * from tb where 时间字段 >= convert(varchar(10),getdate() - 7,120)
    随后七天
    select * from tb where 时间字段 <= convert(varchar(10),getdate() + 7,120) and 时间字段 >= 时间字段
      

  4.   

    convert和dateadd函数结合使用就可以了。
      

  5.   

    上月
    select * from tb where month(时间字段) = month(getdate()) - 1
    本月
    select * from tb where month(时间字段) = month(getdate()) 
    下月
    select * from tb where month(时间字段) = month(getdate()) + 1
      

  6.   

    --2
    --如果是在表中查詢
    --昨天 
    Select * From TableName Where DateDiff(dd, DateTimCol, GetDate()) = 1
    --明天
    Select * From TableName Where DateDiff(dd, GetDate(), DateTimCol) = 1
    --最近七天
    Select * From TableName Where DateDiff(dd, DateTimCol, GetDate()) <= 7
    --随后七天
    Select * From TableName Where DateDiff(dd, GetDate(), DateTimCol) <= 7
    --上周
    Select * From TableName Where DateDiff(wk, DateTimCol, GetDate()) = 1
    --本周
    Select * From TableName Where DateDiff(wk, DateTimCol, GetDate()) = 0
    --下周
    Select * From TableName Where DateDiff(wk, GetDate(), DateTimCol ) = 1
    --上月
    Select * From TableName Where DateDiff(mm, DateTimCol, GetDate()) = 1
    --本月
    Select * From TableName Where DateDiff(mm, DateTimCol, GetDate()) = 0
    --下月
    Select * From TableName Where DateDiff(mm, GetDate(), DateTimCol ) = 1
      

  7.   

    本周
    select * from tb where datediff(week , 时间字段 ,getdate()) = 0上周
    select * from tb where datediff(week , 时间字段 ,getdate()) = 1下周
    select * from tb where datediff(week , 时间字段 ,getdate()) = -1
      

  8.   

    1.现在我需要得到只是日期部分,时间部分不要,SQL怎么写?
    select convert(varchar(10),getdate(),120)2.求以下日期SQL:
    昨天 
    select convert(varchar(10),getdate() - 1,120)
    明天
    select convert(varchar(10),getdate() + 1,120)
    最近七天
    select * from tb where 时间字段 >= convert(varchar(10),getdate() - 7,120)随后七天
    select * from tb where 时间字段 <= convert(varchar(10),getdate() + 7,120) and 时间字段 >= 时间字段
    上月
    select * from tb where month(时间字段) = month(getdate()) - 1
    本月
    select * from tb where month(时间字段) = month(getdate()) 
    下月
    select * from tb where month(时间字段) = month(getdate()) + 1本周
    select * from tb where datediff(week , 时间字段 ,getdate()) = 0上周
    select * from tb where datediff(week , 时间字段 ,getdate()) = 1下周
    select * from tb where datediff(week , 时间字段 ,getdate()) = -1
      

  9.   

    昨天:dateadd(day,-1,getdate())
    明天:dateadd(day,1,getdate())
    上月:month(dateadd(month, -1, getdate()))
    本月:month(getdate())
    下月:month(dateadd(month, 1, getdate()))
    其他同上咯
      

  10.   

    1.
    select convert(varchar(10),getdate(),120)
    具体什么意思查一下帮助!
    2.参考:
        paoluo(一天到晚游泳的鱼) ( ) 信誉:100    Blog  2007-03-26 16:16:03
      

  11.   

    2. 参考:dawugui(潇洒老乌龟) ( ) 信誉:100    Blog  2007-3-26 16:19:08  
    ------------------------------
    虽然表面不一样,其实是一样的
    具体查看 datediff() 和dateadd()