Как сравнить дату с системной датой? - PullRequest
0 голосов
/ 07 октября 2009

Использование SQL Server 2000 и VB6

Table1

ID  Date 

001 20090801 
001 20090802
…

001 20090831

002 20090801 
002 20090802
…

002 20090831

Итак ...,

Я хочу сравнить дату с системной датой, предположим, что сегодняшняя дата - 20090831, я хочу отобразить сообщение «сегодня последний день для 001»

Как сделать код в vb6 или можно сделать запрос для этого условия?

Нужна помощь

1 Ответ

3 голосов
/ 07 октября 2009

Вы можете сделать все это в запросе:

SELECT 'Today is the last day for ' + ID 
FROM (SELECT ID, MAX(Date) as Date FROM Table1) t1
WHERE DATEPART(dayofyear, Date) = DATEPART(dayofyear, GETDATE()) 
AND DATEPART(year, Date) = DATEPART(year, GETDATE())

Однако это предполагает, что вы используете типы данных DATETIME, а не строки для Date. Если вы используете строки, лучше всего сгенерировать системную дату внутри вашего приложения, передать ее в запрос в качестве параметра хранимой процедуры и использовать «WHERE Date = @ systemdate»

редактировать: фиксированное форматирование

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...