Previous: 検索条件の指定
Up: where句
Next: リスト
Previous Page: 検索条件の指定

論理演算

論理演算子 and , or , not を用いて、条件部に、二つ以上の条件を組み合わせて指定 することが出来る。
先ほどの例では、単純に300円未満の本を検索したが、次のようにして、500円以上 1000円以下の本を探すことが出来る。

例 14: 500円以上、1000円以下の本を検索

select 書名 , 定価
	from   書籍台帳
	where  500 >= 定価 and 定価 <= 1000

範囲の指定はよく使われるのでが、SQLでは、次のような特別の構文 between ? and ? が用意されている。betweenでは、範囲指定の両端は含まれることに注意しよう。

例 15: between ? and

select 書名 , 定価
	from   書籍台帳
	where  定価  between 500 and 1000

もっとも、日本語対応したSQLでは、項目名やテーブル名に日本語を自由に使え、 読み易さが格段に向上しているので、むしろSQL予約語のbetweenが、日本語に混じれば 浮き上がって見えるかも知れない。英語を母国語としている人には、例15の方が自然な 構文なのだろうが、読者の中には、例14の方が分かりやすいと感じる人が多いかも知れ ない。

論理演算子に、or と not を使った例を見ておこう。

次の例は、「利用者台帳」というテーブルの中から、姓が'丸山'であるか、あるいは、 名前が'不二夫'である人の電話番号を調べている。

例 16: or

select  電話番号
	from    利用者台帳 
	where   氏名_姓 = '丸山' or 氏名_名 = '不二夫'

notは、次の例のように用いられる。ここでは、「出版社一覧」というテーブルから、 出版地が東京でない出版社を選び出している。not と比較演算子 = の組合せによる、 where not 出版地 = '東京' という条件部は、!= を用いて、 where 出版地 != '東京' というように、書き換えることが出来る。

例 17: 東京以外の出版社を検索

select 出版社 , 出版地
	from   出版社一覧
	where  not 出版地 = '東京'	( where  出版地 != '東京' )

maruyama@wakhok.ac.jp
1995年02月10日 (金) 00時49分16秒 JST