Hitachi

Hitachi Advanced Data Binder SQLリファレンス


7.19.1 BETWEEN述語

特定の範囲のデータを検索する際にBETWEEN述語を使用します。

〈この項の構成〉

(1) 指定形式

BETWEEN述語::=値式1 〔NOT〕 BETWEEN 値式2 AND 値式3

(2) 指定形式の説明

値式1

BETWEEN述語の評価対象列を指定します。値式の形式で指定します。値式については,「7.20 値式」を参照してください。

NOT

NOTを指定すると,BETWEEN以降に指定した条件を満たさない値が検索対象になります。

BETWEEN 値式2 AND 値式3

検索範囲の下限値と上限値を指定して,検索範囲を指定します。値式の形式で指定します。

値式2には検索範囲の下限値を指定し,値式3には検索範囲の上限値を指定します。

(3) 述語の評価

次に示す条件を満たす行に対して,BETWEEN述語はになります。

値式2値式1 AND 値式1値式3

次に示すBETWEEN述語は等価になります。

(4) 規則

  1. ?パラメタだけの値式を値式1に指定できません。

  2. 値式1値式3に指定できるデータ型は,数データ,文字データ,または日時データです。

  3. 値式1値式3の結果のデータ型が,比較可能なデータ型になるように値式1値式3を指定してください。比較可能なデータ型については,「6.2.2 変換,代入,比較できるデータ型」の「(1) 比較できるデータ型」を参照してください。

    ただし,値式1に日付,時刻,または時刻印を表す既定の入力表現を指定した場合,値式2以降に日時データを指定することはできません。既定の入力表現については,「6.3.3 既定の文字列表現」を参照してください。

(5) 例題

例題1

販売履歴表(SALESLIST)から,2011/9/4〜2011/9/5に商品を購入した顧客の,顧客ID(USERID),商品コード(PUR-CODE),購入日(PUR-DATE)を検索します。

SELECT "USERID","PUR-CODE","PUR-DATE"
  FROM "SALESLIST"
    WHERE "PUR-DATE" BETWEEN DATE'2011-09-04' AND DATE'2011-09-05'

下線部分がBETWEEN述語の指定です。

例題2

販売履歴表(SALESLIST)から,2011/9/4〜2011/9/5を除いた日に商品を購入した顧客の,顧客ID(USERID),商品コード(PUR-CODE),購入日(PUR-DATE)を検索します。

SELECT "USERID","PUR-CODE","PUR-DATE"
  FROM "SALESLIST"
    WHERE "PUR-DATE" NOT BETWEEN DATE'2011-09-04' AND DATE'2011-09-05'

下線部分がBETWEEN述語の指定です。