我需要從SQL Server數據庫中選擇落在某個小時之間的所有記錄。讓我舉一個例子:根據ProgramStart和ProgramEnd之間的當前時間選擇記錄
當前時間是上午9:33,並且在數據庫中有許多Program記錄具有ProgramStart和ProgramEnd。日期的一個例子可能是:
| ProgramStart | ProgramEnd | ClientID |
+--------------------------+-------------------------+----------+
| 1900-01-01 09:00:00.000 | 1900-01-01 10:00:00.000 | 5 |
+--------------------------+-------------------------+----------+
| 1900-01-01 11:00:00.000 | 1900-01-01 13:00:00.000 | 4 |
+--------------------------+-------------------------+----------+
| 1900-01-01 12:00:00.000 | 1900-01-01 14:00:00.000 | 5 |
+--------------------------+-------------------------+----------+
| 1900-01-01 11:00:00.000 | 1900-01-01 13:00:00.000 | 6 |
+--------------------------+-------------------------+----------+
| 1900-01-01 16:00:00.000 | 1900-01-01 17:00:00.000 | 7 |
+--------------------------+-------------------------+----------+
| 1900-01-01 16:00:00.000 | 1900-01-01 17:00:00.000 | 5 |
+--------------------------+-------------------------+----------+
| 1900-01-01 17:00:00.000 | 1900-01-01 18:00:00.000 | 4 |
+--------------------------+-------------------------+----------+
我想提取的所有記錄的客戶端5和當前時間是上午9:33
怎樣才能做到這一點與SQL之間。我試過這個,但它不起作用:
SELECT CAST('1900-01-01 09:33:00.000' AS datetime) AS TimeNow, * FROM Programs
WHERE ClientID = 5
AND TimeNow BETWEEN '1900-01-01 09:00:00.000' AND '1900-01-01 10:00:00.000'
任何建議將不勝感激。
非常感謝, 保羅
-1。 '1900年11月20日20:10.xx.yyyy' *永遠*在'1900-01-01 09:00:00.000'和'1900-01-01 10:00:00.000'之間?編輯:-1刪除。 – gbn 2010-11-03 19:11:08
是的,沒有注意到,直到我看到其他答案。 – 2010-11-03 19:13:13