[英]How do you filter to get data that is in between a certain time of day in IBM DB2
我試圖在DB2數據庫中添加過濾條件。 我是新手,來自Oracle背景。 我正在嘗試獲取日期介於今天凌晨4點和今天凌晨5點之間的記錄。 我目前有以下查詢,返回零結果:
db2 => select datetimeColumn from datetimeExample WHERE datetimeColumn BETWEEN timestamp(current date) - 1 day + 4 hour AND timestamp(current date) - 1 day + 13 hour
DATETIMECOLUMN
--------------------------
0 record(s) selected.
這是我認為應該顯示的表中數據,但條件語句有問題,我們將提供任何幫助
db2 => select * from datetimeExample
DATETIMECOLUMN
--------------------------
2016-06-16-09.38.53.759000
1988-12-25-17.12.30.000000
2016-12-25-17.10.30.000000
2016-06-16-04.10.30.000000
2016-06-16-05.10.30.000000
1988-12-25-15.12.30.000000
1988-12-25-14.12.30.000000
2016-06-16-12.10.30.000000
2016-06-16-07.10.30.000000
2016-06-16-08.10.30.000000
10 record(s) selected.
當您省略- 1 day
該查詢應該起作用。 原因是timestamp(current date)
返回今天零時的時間戳。 然后,您增加了4個小時,並處於所需的開始時間。 結束時間的數學運算類似(下午5點應為+ 17 hours
)。
select datetimeColumn from datetimeExample
WHERE datetimeColumn
BETWEEN timestamp(current date) + 4 hours AND timestamp(current date) + 17 hours
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.