0
DB2データベースにフィルタ条件を追加しようとしています。私はそれが初めてで、Oracleの背景から来ています。私は今日の午前4時と今日の午後5時の間の日付のレコードを取得しようとしています。IBM DB2の特定の時間帯にあるデータを取得するためにフィルタリングする方法
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.
これは間違った結果を招くことがあります。上限は排他的( '<')にする必要があります。 [この記事](http://sqlblog.com/blogs/aaron_bertrand/archive/2011/10/19/what-do-between-and-the-devil-have-in-common.aspx)では、SQL Server、問題は実際に数値と値の表現方法です。 –
この場合の「間違った結果」は、BETWEEN ANDの包含的な性質がDATE/TIMEs/TIMESTAMPsに理解されているかどうかによります。私は常にエンドポイントが含まれることを期待しています。 – user2338816