如何用SQL查找3天的数据,一个月的,半年的数据 当天的为 DATEDIFF(day, HY_Adddate, GETDATE())=0
发布网友
发布时间:2022-04-11 14:28
我来回答
共3个回答
热心网友
时间:2022-04-11 15:57
3天:
where HY_Adddate>DATEADD(day, -3, GETDATE())
30天:
where HY_Adddate>DATEADD(day, -30, GETDATE())
依此类推……
说明:
要注意的是 GETDATE()得到的查询运行时的时间,举例说现在是:2011-07-08 11:00
where HY_Adddate>DATEADD(day, -3, GETDATE())
返回就只有时间晚于2011-07-05 11:00的记录,不包含2011-07-08 11:00之前的记录的
另外在where中有函数会影响查询性能的,最好是先算出一个具体时间,再where HY_Adddate>‘具体时间’
热心网友
时间:2022-04-11 17:15
前3天: DATEDIFF(day, HY_Adddate, GETDATE())=3
同一个月: DATEDIFF(month, HY_Adddate, GETDATE())=0
上一个月: DATEDIFF(month, HY_Adddate, GETDATE())=1
半年前: DATEDIFF(month, HY_Adddate, GETDATE())=6
同一年:DATEDIFF(year, HY_Adddate, GETDATE())=0
类似用法,举一反三,希望对你有帮助
热心网友
时间:2022-04-11 18:50
你那句返回的是数字, 你自己>30、 >3 , 不就可以了。