zoukankan      html  css  js  c++  java
  • [zhuan]SQLServer查询最近一天,三天,一周,一月,一季度方法

    三天 select * from T_news where datediff(day,addtime,getdate())<= 2 and datediff(day,addtime,getdate())>= 0

    一周 select * from T_news WHERE (DATEPART(wk, addtime) = DATEPART(wk, GETDATE())) AND (DATEPART(yy, addtime) = DATEPART(yy, GETDATE()))
    注意:此时不能用 datediff 差值为7,因为,datediff只表示间隔数
    一月 select * from T_news WHERE (DATEPART(yy, addtime) = DATEPART(yy, GETDATE())) AND (DATEPART(mm, addtime) = DATEPART(mm, GETDATE()))
    一季度 select * from T_news where DATEPART(qq, addtime) = DATEPART(qq, GETDATE()) and DATEPART(yy, addtime) = DATEPART(yy, GETDATE())
    本周:select * from table where datediff(week,C_CALLTIME,getdate())=0 --C_CALLTIME 为日期字段
    本月:select * from table where datediff(Month,C_CALLTIME,getdate())=0 --C_CALLTIME 为日期字段
    本季:select * from table where datediff(qq,C_CALLTIME,getdate())=0
    前半年1-6,后半年7-12:select * from table where datepart(mm,C_CALLTIME)/7 = datepart(mm,getdate())/7

    ----------------------------------------------------------------------------------------------

    sql得到当前系统时间得 日期部分

    CONVERT(varchar(10),getDate(),120)

     

    求得到"昨天,今天"日期函数的SQL

    所属分类:MS-SQL Server 基础类

    ----------------------------------------------------------------------------------------------

    ?

    Convert(Datetime,GetDate(),2)

    GetDate()得到今天日期2007-03-26 16:14:12.187

    1.现在我需要得到只是日期部分,时间部分不要,SQL怎么写?

    2.求以下日期SQL:

    昨天

    明天

    最近七天

    随后七天

    上周

    本周

    下周

    上月

    本月

    下月

    请高手帮忙。谢谢

    ----------------------------------------------------------------------

    1.现在我需要得到只是日期部分,时间部分不要,SQL怎么写?

    select convert(varchar(10),getdate(),120)

    --------------------------------------------------------

    --1.

    Select Convert(Varchar(10), GetDate(), 120)

    Select Convert(Varchar(10), GetDate(), 121)

    --------------------------------------------------------

    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 时间字段 >= 时间字段

    --------------------------------------------------------

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

    --------------------------------------------------------

    用datediff(day,时间列,getdate())

    --------------------------------------------------------

    上月

    select * from tb where month(时间字段) = month(getdate()) - 1

    本月

    select * from tb where month(时间字段) = month(getdate())

    下月

    select * from tb where month(时间字段) = month(getdate()) + 1

    --------------------------------------------------------

    --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

    --------------------------------------------------------

    本周

    select * from tb where datediff(week , 时间字段 ,getdate()) = 0

    上周

    select * from tb where datediff(week , 时间字段 ,getdate()) = 1

    下周

    select * from tb where datediff(week , 时间字段 ,getdate()) = -1

    --------------------------------------------------------

    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 时间字段 >= 时间字段

    上月

  • 相关阅读:
    会议开饭
    计算时间差(c#和sqlServer)
    sqlserver 新增表字段
    javascript刷新父页面的各种方法汇总
    java 从List中随机取出一个元素
    解决Appium 抓取toast(java篇)
    appium java-client 5.0以后移除了swipe方法,也就是无法使用driver.swipe()了
    appium怎么按下系统按键?如按下返回键、home键等等
    Android 常用 adb 命令总结
    appium Capabilities的各个标签
  • 原文地址:https://www.cnblogs.com/jixu8/p/3890736.html
Copyright © 2011-2022 走看看