目次へ

5.3. 特殊演算子

SQL には、前節で説明したブール演算子の他に、IN, BETWEEN, LIKE, IS NULL といった特殊な演算子が用意されています。これらの演算子を利用することでさらに複雑な条件を与えてテーブルからデータを参照することができるようになります。

5.3.1. IN 演算子

IN 演算子を利用することで、含まれる値と含まれない値の集合を明示的に定義することができます。受注表から顧客コードが 001 と 002 であるものを参照するとき、IN 演算子を利用せずに次のように書けます。

-- sample.13-1 --
/* データの参照 */

  SELECT * FROM 受注表
     WHERE 顧客コード = '001' OR 顧客コード = '002' ;

/* 実行結果 */

 受注番号 顧客コード 商品コード 受注個数 納品日
 ─────── ──────── ───────── ─────── ──────
 10001   001      102       30      20010401
 10002   002      101       20      20010401
 10003   001      103       10      20010402
 10004   001      103       15      20010402
 10006   001      101       15      20010404
 10007   002      102       20      20010404
 10008   002      101       20      20010405
 10009   001      102       20      20010406
 10011   001      102       25      20010407

これと同じ事が IN 演算子を利用すると、より簡単な文で書くことができます。

-- sample.13-2 --
/* データの参照 */

  SELECT * FROM 受注表
     WHERE 顧客コード IN ('001','002') ;

/* 実行結果 */

 受注番号 顧客コード 商品コード 受注個数 納品日
 ─────── ────────  ──────── ─────── ─────
 10001   001       102      30      20010401
 10002   002       101      20      20010401
 10003   001       103      10      20010402
 10004   001       103      15      20010402
 10006   001       101      15      20010404
 10007   002       102      20      20010404
 10008   002       101      20      20010405
 10009   001       102      20      20010406
 10011   001       102      25      20010407

関連記事

↑このページの先頭へ

こちらもチェック!

PR
  • XMLDB.jp
  • シナジーマーケティング研究開発グループブログ
Loading