作成日:2021-08-06, 更新日:2022-03-03
基本
「collate utf8_unicode_ci」を使えば良いっぽい
▼「hoge」「hoge」の両方を検索対象にしたい
select * from xxx where REPLACE(REPLACE(〇〇〇, '゙', ''), '゚', '') collate utf8_unicode_ci like '%hoge%'
※この例だとアルファベッドにしているから関係ないけど、半角カナも対象に含まれる
phpMyAdminだとバージョンによってクエリに問題ある・・・的なコトが言われるかもしれないけど気にせず実行すればOK(※自己責任で実行)
全角カナ・半角カナの濁点・半濁点の対応
上記の「REPLACE(REPLACE(〇〇〇, '゙', ''), '゚', '')」ってトコで全角カナ・半角カナの濁点・半濁点の対応をしている
▼「カラム: category」に「グループ」という値が登録されているとき「グループ」で検索したいといき
select * from xxx where REPLACE(REPLACE(`category`, '゙', ''), '゚', '') collate utf8_unicode_ci like '%グループ%'
注意点: 濁音、半濁音も含まれる
・・・設定の問題なのか、勘違いしているのか・・・
濁音、半濁音もすべて同一として扱われるっぽい→「は」「ば」「ぱ」「ハ」「バ」「パ」はすべて同じ扱いになるとか。
・・・半角カナは違うのか? ひとまず面倒なんで未調査。