показывая, что дата больше текущей - PullRequest
16 голосов
/ 13 июля 2011

Как мне показать что-то в SQL, где дата больше текущей?

Я хочу получить данные, которые показывают все больше с сегодняшнего дня (сейчас) за следующие 90 дней.

Я думал =< {fn NOW()}, но, похоже, это не работает в моем представлении sql здесь.

Как это можно сделать?

Ответы [ 7 ]

29 голосов
/ 13 июля 2011
SELECT * 
FROM MyTable 
WHERE CreatedDate >= getdate() 
AND CreatedDate <= dateadd(day, 90, getdate())

http://msdn.microsoft.com/en-us/library/ms186819.aspx

4 голосов
/ 25 марта 2015

Если у вас есть поле для DateTime, ваш запрос может выглядеть следующим образом:

SELECT *
FROM TABLE
WHERE DateTime > (GetDate() + 90)
2 голосов
/ 09 апреля 2015

Для тех, кто хочет приятную условность:

DECLARE @MyDate DATETIME  = 'some date in future' --example  DateAdd(day,5,GetDate())

IF @MyDate < DATEADD(DAY,1,GETDATE())
    BEGIN
        PRINT 'Date NOT greater than today...'
END
ELSE 
    BEGIN
       PRINT 'Date greater than today...'
END 
1 голос
/ 28 августа 2014
Select * from table where date > 'Today's date(mm/dd/yyyy)'

Вы также можете добавить время в одинарные кавычки (00:00:00 AM)

Например:

Select * from Receipts where Sales_date > '08/28/2014 11:59:59PM'
1 голос
/ 13 июля 2011

для SQL Server

select *
from YourTable
where DateCol between getdate() and dateadd(d, 90, getdate())
1 голос
/ 13 июля 2011

На сервере sql вы можете сделать

SELECT *
FROM table t
WHERE t.date > DATEADD(dd,90,now())
0 голосов
/ 13 июля 2011

Если вы используете SQL Server, это будет примерно так:

DATEDIFF(d,GETDATE(),FUTUREDATE) BETWEEN 0 AND 90
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...