- MySQL
- 2022-10-06 - 更新:2022-12-13
MySQLの抽出条件の指定方法としてIN句とFIND_IN_SET関数というものがあります。
その具体的な使用方法をご紹介します。
サンプルとしてテーブル「sample」を用意します。
mysql> select * from `sample`; +----+--------+------+ | id | name | type | +----+--------+------+ | 1 | 赤井 | 1 | | 2 | 井田 | 2 | | 3 | 宇野 | 3 | | 4 | 江崎 | 1 | | 5 | 奥本 | 2 | +----+--------+------+
IN句
例えば、idが1・2・4のデータを取得したいとき、
IN句を使うとこのように抽出することができます。
SELECT * FROM sample WHERE id IN (1, 2, 4);
結果は以下のようになります。
+----+--------+------+ | id | name | type | +----+--------+------+ | 1 | 赤井 | 1 | | 2 | 井田 | 2 | | 4 | 江崎 | 1 | +----+--------+------+
FIND_IN_SET関数
IN句のときと同様にidが1・2・4のデータを取得してみましょう。
SELECT * FROM sample WHERE FIND_IN_SET(id, '1,2,4');
こちらも結果はIN句を使ったときと同じ結果になります。
2,804 views