これは実行できないかもしれないと思いますが、とにかく試してみることにしました。
MySQL データベースでは、列の 1 つがrelated
カンマ区切りの値のリストです: bob,sally,james,rick
.
特定の行について、この列の項目数は可変です。
ここで、その列のすべての項目に対して soundex 検索を実行したい場合 (このデータベースが確立されて統合された後のクライアント要求)、どうすればよいでしょうか? のようなものを書きたいと思います
SELECT `primary` FROM `table` WHERE `related`.split(",").any() SOUNDS LIKE sample
これは明らかに無意味なコードですが、うまくいけばアイデアを伝えます。
基本的に、CSV フィールドを個々の値に分解/分割してSOUNDEX
比較します。これらすべてのrelated
フィールドを取得する必要がある場合は、それらを分解してからsoundex()
PHP ループで個別に処理しますforeach()
(その言語はあまり重要ではありません。Python の場合もありますが、少し手間がかかります)。可能であればそれを避けるのが大好きです。