作者alen332l
看板Database
標題[SQL ] 請教MSSQL datetime只取出時間做篩選
時間Thu Jul 29 17:11:59 2010
請問datetime如果使用他的時間做篩選??
例如 10 筆資料:
name(char) timeT(datetime)
____ ________
‧A 20100314 10:04:23
‧B 20100314 10:24:25
‧C 20100514 9:08:26
‧D 20100304 18:33:23
‧E 20100314 7:09:22
‧F 20100317 6:04:00
‧G 20100214 7:33:23
‧H 20100318 7:04:23
‧I 20100304 8:32:21
‧J 20100424 20:54:11
我想要所有 3 月 1日到3月31日的 所有早上7:00~10:00的資料
目前想到的方法比較麻煩:
SELECT *
FROM 資料庫
where
(timeT between '2010-03-01 07:00:00' and '2010-03-01 10:00:00')
(timeT between '2010-03-02 07:00:00' and '2010-03-02 10:00:00')
(timeT between '2010-03-03 07:00:00' and '2010-03-03 10:00:00')
(timeT between '2010-03-04 07:00:00' and '2010-03-04 10:00:00')
(timeT between '2010-03-05 07:00:00' and '2010-03-05 10:00:00')
(timeT between '2010-03-06 07:00:00' and '2010-03-06 10:00:00')
.
.
.
.
.
.
(timeT between '2010-03-30 07:00:00' and '2010-03-30 10:00:00')
(timeT between '2010-03-31 07:00:00' and '2010-03-31 10:00:00')
感覺這樣寫非常沒有效率...
請問有沒有別的較厲害的方法? 感謝m(.__.)m
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.4.198
※ 編輯: alen332l 來自: 140.112.4.198 (07/29 17:12)
※ 編輯: alen332l 來自: 140.112.4.198 (07/29 17:12)
推 rushcat:用DATEPART分別取時、分判斷 07/29 18:46
推 PsMonkey:日期函數好好找一定有吧 Zzzz 07/29 20:41
推 tw70126:日期跟時間拆開來....一個 and 就夠了 07/29 21:00