嘿我如何获得超过6个月的日期列的数据?
从myTable中选择*,其中dateColumn>
由于
答案 0 :(得分:3)
使用DATEDIFF功能:)
在此处阅读更多内容:https://msdn.microsoft.com/en-us/library/ms189794.aspx
SELECT *
FROM myTable
WHERE DATEDIFF(MM, dateColumn, GETDATE()) > 6
答案 1 :(得分:0)
select *
from table
where
date_column >=
DATEADD(m, -6, convert(date, convert(varchar(6), getdate(),112) + '01'))
答案 2 :(得分:0)
SELECT * FROM myTable WHERE DATEDIFF(day, NOW(), dateColumn) > 180
答案 3 :(得分:0)
我会用
select * from myTable where dateColumn > DATEADD(mm,GETDATE(),-6)
这样您就不会在查阅列上应用函数,这在某些情况下会导致性能问题
答案 4 :(得分:0)
Dateadd使用起来非常简单。 第一个参数是间隔,m表示月,d表示日等。第二个参数是增量,最后一个显然是日期
select dateadd(m,6,getdate())
这里有更多信息 http://www.w3schools.com/sql/func_dateadd.asp
一旦你理解了dateadd,那么你可以简单地在where子句中使用它
Select * from Table1 where date1 >= dateadd(m,6,date1)