日期:2014-05-17 浏览次数:20862 次
select * from table where datediff('d',时间列名,DateTime.Now)>1 //>1日 select * from table where datediff('d',时间列名,DateTime.Now)>7 //>1周 select * from table where datediff('m',时间列名,DateTime.Now)>1 //>1月 select * from table where datediff('y',时间列名,DateTime.Now)>1 //>1年
------解决方案--------------------
select * from [table] where datediff(day,[字段],getdate())>6 -- 时间差大于6 的为一周及以上 select * from [table] where datediff(month,[字段],getdate())>0 --一月 select * from [table] where datediff(year,[字段],getdate())>0 --一年
------解决方案--------------------
select * from [table] where datediff(day,[字段],getdate())> day(dateadd(dd,-1,dateadd(mm,1,dateadd(DD,-DAY(getdate())+1,getdate())))) 一月
------解决方案--------------------
SELECT *, CASE WHEN DATEDIFF(DAY,[最后联系时间],GETDATE()) > 365 THEN '一年以上未联系' WHEN DATEDIFF(DAY,[最后联系时间],GETDATE()) > 30 THEN '一月以上未联系' -- 按30天计,如果要按不同月份不同天数计,似乎没有必要 ELSE '一周以上未联系' END FROM [TABLE] WHERE DATEDIFF(DAY,[最后联系时间],GETDATE()) > 6