SQL Update Query - PullRequest
       3

SQL Update Query

0 голосов
/ 23 июня 2011

Предположим, у меня есть таблица со столбцами: Approved, Joining_Date, Period.

Approve-String, Joining_Date-DateTime, Period-Integer. Теперь я хочу обновить значение столбца Approved на yes, если разница между сегодняшней датой и столбцом Joining_Date больше столбца Period. Как это можно сделать за один запрос? Что-то вроде:

"UPDATE table_name SET Approved='Yes' WHERE (SYSDATE-Joining_Date>Period)"

Я использую ASP.NET 4 и MS-SQL 2008 Express в VS 2010. Заранее спасибо !!!

Ответы [ 3 ]

1 голос
/ 23 июня 2011

Предполагая, Period в днях:

UPDATE table_name SET Approved='Yes' 
WHERE DATEDIFF(DAY,Joining_Date, GETDATE()) > Period
0 голосов
/ 23 июня 2011
 UPDATE table_name set Approved = 'Yes' 
 WHERE DateDiff(dd, JoiningDate, getdate()) > Period

Предполагается, что Period хранится как целое число дней.

См. http://msdn.microsoft.com/en-us/library/ms189794.aspx для других примеров, если Period не дни.

0 голосов
/ 23 июня 2011

Проверьте DATEDIFF:

UPDATE table_name
SET Approved='Yes'
WHERE DATEDIFF(dd, Joining_Date, GETDATE()) > Period
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...