ワイズリマインダー

MySQLでひらがなとカタカナを識別せずに絞り込む

例)

SELECT * FROM `chara` WHERE `name` LIKE 'すみっこ%';

これではすみっコがヒットしない。

 

濁点系を置換してutf8mb4_unicode_ciでCOLLATEする

SELECT * FROM `chara` WHERE REPLACE(REPLACE(`name`, '゙', ''), '゚', '') COLLATE utf8mb4_unicode_ci LIKE 'すみっこ';

これで希望する答えは返ってくるようになったが、
はたしてインデックスは聞いているのだろうか?
EXPLAINした結果、Using where・・・

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

検索

最近のコメント

最近の投稿

タグ

フィード配信

アーカイブ

外部リンク