1
我有一個查詢,它返回行創建時的最新日期。日期爲「2010-02-03」SQL:選定的日期超出範圍
SELECT * FROM
[LinkedServer].[Server].[Table]
WHERE [TimeStamp]= (SELECT MAX(TimeStamp)
FROM [LinkedServer].[Server].[Table]
WHERE UserName IN
(SELECT Tagname COLLATE DATABASE_DEFAULT FROM LocalServer.MyDatabase.dbo."Taglist"
WHERE LOCATION = 'Europe' AND COUNTRY = 'England'))
此查詢工作正常,但是我想插入一個IF ELSE語句,所以如果我選擇不同的日期,比MAX(時間戳)更大然後返回一個錯誤信息。我嘗試的方式如下:
IF MAX(TimeStamp) > '2011-02-15'
BEGIN
SELECT * FROM
[LinkedServer].[Server].[Table]
WHERE [TimeStamp]= (SELECT MAX(TimeStamp)
FROM [LinkedServer].[Server].[Table]
WHERE UserName IN
(SELECT Tagname COLLATE DATABASE_DEFAULT FROM LocalServer.MyDatabase.dbo."Taglist"
WHERE LOCATION = 'Europe' AND COUNTRY = 'England'))
END
ELSE
PRINT 'Date out of range'
不幸的是,這種方式查詢不起作用。關於我應該在哪裏更改代碼的任何建議? 謝謝!
謝謝你的快速回答。我正在執行查詢。只要它返回一些內容,我會讓你知道。 – Farkiba 2013-03-01 09:24:02