5

LIKEで構造を使用する際に問題がありますDB2。たとえば、次のとおりです。

select * from TEST where TIME LIKE '2012-03-04-%'

ご参考までに。-TIMETIMESTAMPデータ型です。

LIKEwithを使用しても機能しないのはなぜTIMESTAMPSですか?

追加情報: select ステートメントでユーザーが提供した 1 日からデータを抽出したいと考えています。

4

3 に答える 3

12

@mortbの答えを拡張するだけで、BETWEENまたは

WHERE time >= '2012-03-04' AND time < '2012-03-05'

orを使用することの利点は、andBETWEENを使用する比較は、インデックスがある場合、キャストのために使用できないことを意味します。castsLIKEtime

于 2012-04-04T10:59:48.200 に答える
4

LIKE は文字列 (char、varchar) データ型用です。使用するWHERE time BETWEEN '2012-03-04' AND '2012-03-04 23:59:59.998'

于 2012-04-04T10:50:16.770 に答える
1

このように使用できます

where time between
    to_date('2016-06-17 00:00:00', 'yyyy-mm-dd HH24:MI:SS') and
    to_date('2016-06-18 00:00:00', 'yyyy-mm-dd HH24:MI:SS'
于 2016-06-18T05:05:38.717 に答える