2015-02-27 4 views

ответ

3

Использование DATEDIFF функция :)

Подробнее здесь: https://msdn.microsoft.com/en-us/library/ms189794.aspx

SELECT * 
FROM myTable 
WHERE DATEDIFF(MM, dateColumn, GETDATE()) > 6 
+0

DATEDIFF существует именно для этого. –

+0

Спасибо. Вот так! –

0
select * 
from table 
where 
date_column >= 
DATEADD(m, -6, convert(date, convert(varchar(6), getdate(),112) + '01')) 
0
SELECT * FROM myTable WHERE DATEDIFF(day, NOW(), dateColumn) > 180 
0

I чюо пакетирования используют

select * from myTable where dateColumn > DATEADD(mm,GETDATE(),-6) 

Таким образом, вы Арент применения функции на колонке поиска, которая в некоторых случаях может привести к производительности вопросы

0

DATEADD очень прост в использовании. первым параметром является интервал, m означает месяц, d означает дневной ect. второй параметр является приращение, а последний, очевидно, дата

select dateadd(m,6,getdate()) 
более

информация здесь http://www.w3schools.com/sql/func_dateadd.asp

После того, как вы понимаете DATEADD, то вы можете просто использовать его в том, где пункт как таковой

Select * from Table1 where date1 >= dateadd(m,6,date1) 
Смежные вопросы