私はいくつかの曲名とそれらの事前計算されたsoundexをmysqlテーブルに保存しています。ユーザー入力のsoundexを事前に計算されたsoundexと比較したい。そして、ユーザー入力と曲名の差の昇順で結果を取得します。
次のクエリを試しました(Javaで):
String query="SELECT * FROM song ORDER BY STRCMP(pre_calculated_soundex,SOUNDEX("+user_input+")) ASC ";
しかし、strcmp は 1,0 または -1 しか返しません。したがって、順序は正しくありません。
も試しWHERE pre_calculated_soundex=SOUNDEX(user_input)
ましたが、これは正確に一致するsoundexを返すだけです。