我正在尝试创建一个 mysql 查询,它将从数据库中选择 soundex 等效姓氏。在 php 中,我通过以下方式生成了 soundex 代码:
$sxname = soundex($name);
然后我建立了mysql查询
$query = "SELECT *
FROM database
WHERE soundex(surname)
LIKE '$sxname'"
;
这适用于很多姓氏,但不适用于其他姓氏 - 例如 CAWS。CAWS 的 php soundex 值为 C200,但 mysql 值为 C000。
有没有解决这些差异的方法?
我确实尝试使用一个函数,所以两者都是在 php 中创建的:
function mysql_soundex($name)
{
$snname = soundex($name);
return $snname;
}
并调用它:
$query = "SELECT *
FROM database
WHERE mysql_soundex('surname')
LIKE '$sxname'"
;
但这也没有用。