我有一個查詢,告訴我客戶端在最近一小時內沒有與我們的服務器通信。發生這種情況時,我需要發送電子郵件。SQL Server:比較布爾表達式結果
這是用於檢索所有未及時通信的客戶端的查詢。
SELECT * FROM Client
WHERE DATEADD(HOUR, 1, LastCommunication) < GetDate()
但是,如果客戶沒有在幾天內通信,我只想發送一個單一的電子郵件。我還想在先前斷開的客戶端恢復聯機時發送電子郵件。爲此,我在名爲「IsErrorNotified」的表中添加了一個位列。
我想只獲取錯誤狀態已更改的客戶端。通常,我會這樣做:
SELECT * FROM Client
WHERE DATEADD(HOUR, 1, LastCommunication) < GetDate() = IsErrorNotified
但是,這是行不通的。我應該怎麼做?
它完美地工作,它更可讀。 – 2013-05-06 19:04:49