我遇到了 Joomla 的问题!3 集成搜索引擎。该引擎的索引器在索引内容时创建所谓的 soundex 值,例如
测试对象,测试对象 1,测试对象 2239923,文本对象 ....
它们都具有相同的 T23123 soundex-value。
现在我的问题是,如果我搜索Test
,则不会有任何结果,因为该术语的 soundex-value 是 T230。
搜索引擎使用的查询是:
SELECT DISTINCT t.term_id AS id, t.term AS term
FROM tablename AS t
WHERE t.soundex = SOUNDEX('test')
我检查了这个主题中的 soundex_match 函数,但不幸的是这不能解决我的问题,因为它不比较 soundex 值。
我想避免破解 cms 核心,并想了解是否有某种近似程序可用于比较 soundex 值,例如使用%
符号时的常规查询,然后我可以尝试使用插件或其他方式实现。
这里提到的 MSSQLDIFFERENCE
函数将是理想的,如果它可以在 MySQL 中使用并准备使用 soundex 值作为第二个参数。
我在 MySQL 方面的经验不是很好,也不知道如何改进查询以匹配 soundex-substrings。