次の問題がある場合のsoundex関数の使用方法:
name | Soundex_value
Kap Pup Nup | K151 ( came from soundex('Kup Pup Nup')
Kap | K100
ここで、name フィールドに「Kap」の soundex 値が含まれるすべての行を取得したい場合。
「Cap」と入力すると、両方の行が表示され、「Kup」と入力すると、両方の行が表示されます。
誰でも私に解決策を提案できますか?
これまでのところ、私はこの解決策を思いつきました:
select * from table where soundex(`name`) like concat(soundex('kap'),'%');
ただし、「名前」フィールドに単語が 1 つしかない場合、このクエリは正常に機能します。