>> MySQL入門トップに戻る
MySQLにおけるIN句の説明です。
WHERE句で例えばあるカラムに対して複数条件を指定したい場合、
何個もAND演算子で繋げていくとコードが長くなって見辛くなります。
そこでIN句を使ってリスト形式に比較することができます。
また、IN句の中には直接SELECT文を指定することもできます。
取得される値のいずれかであれば真となる、という意味になります。
この場合だとlistテーブルに登録されてるid全てがその比較の対象ということになりますね。
このように非常にスマートなコードでまとめられるようになります。
>> 【MySQL LIKE句(文字列比較)】に進む
>> MySQL入門トップに戻る
MySQL IN句(リストで比較)
WHERE句で例えばあるカラムに対して複数条件を指定したい場合、
何個もAND演算子で繋げていくとコードが長くなって見辛くなります。
そこでIN句を使ってリスト形式に比較することができます。
SELECT カラム名 FROM テーブル名 WHERE カラム名 IN(値,値,・・・);testカラムが1、3、5、10のいずれかの値のレコードを取得するSQL文は以下のように書きます。
SELECT * FROM temp WHERE test IN(1,3,5,10);大分コードがすっきりしましたね。
また、IN句の中には直接SELECT文を指定することもできます。
SELECT * FROM temp WHERE test IN(select id from list);上記のようなSQL文を実行すると、testカラムがIN句の中のSELECT文で
取得される値のいずれかであれば真となる、という意味になります。
この場合だとlistテーブルに登録されてるid全てがその比較の対象ということになりますね。
このように非常にスマートなコードでまとめられるようになります。
>> 【MySQL LIKE句(文字列比較)】に進む
>> MySQL入門トップに戻る