SQL Server-获取日期过去6个月

时间:2015-02-27 18:34:19

标签: sql-server

嘿我如何获得超过6个月的日期列的数据?

从myTable中选择*,其中dateColumn>

由于

5 个答案:

答案 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)