上記の質問はわかりにくいかもしれませんので、説明させてください。以下のような構造のテーブルがあります。
form_id bank_ids
1 5,6,7,8
2 7,10
3 4,7,9
4 5,8,1
bank_id7
に割り当てられたフォーム ID を抽出したいとします。どうすれば抽出できますか?
MySQL には、FIND_IN_SETと呼ばれる組み込み関数があります。
SELECT *
FROM tableName
WHERE FIND_IN_SET('7', bank_ids) > 0
テーブルを適切に正規化する必要があります。
アップデート
を使用する場合は、両側LIKE
で連結する必要があります。,
例えば
WHERE CONCAT(',', bank_ids, ',') LIKE CONCAT('%,', '7', ',%')