衡量与结果匹配的搜索字词的相关性

时间:2012-01-11 19:28:35

标签: php mysql

是否有PHP或MySQL函数可以检查匹配字段的相关性?它可以查看字符串并匹配一定百分比的字符吗?

例如,我正在做一个基本的搜索脚本来取回结果但是如何让更相关的结果显示在顶部?

3 个答案:

答案 0 :(得分:0)

很大程度上取决于您的数据和您期望的搜索类型。但基本上,你可能正在寻找模糊搜索。 Soundex和Levenshtein距离是可用于字符串匹配的众多函数中的两个

http://php.net/manual/en/function.levenshtein.php

答案 1 :(得分:0)

嗯,你在这里问一些复杂的问题。大多数情况下,我认为您正在寻找信息检索技术。一些答案都在Stack OVerflow上。

我认为

What tried and true algorithms for suggesting related articles are out there?很棒

如果您只想查找关键字与现有关键字的匹配程度,则可能需要使用levenshtein distance

我试过了:P

答案 2 :(得分:0)

Mysql有一个函数MATCH 你可以像

一样
SELECT * FROM `table` WHERE MATCH(content) AGAINST('search text')

因此,它会在内容中查看它的相关性。 但是您需要将字段content索引到FULLTEXT,这需要表类型“MYISAM”。 输出将自动按升序排序。

希望这会有所帮助