mysql - 在 MYSQL 中进行加权全文搜索的最有效方法是什么?

标签 mysql full-text-search

为了给不同的列赋予不同的权重,当然可以使用:

select   ... 
from     table_name 
where    match(column1,column2...columnn) against('+test..') 
order by weight1*(match (column1) against('test..')) 
       + weight2*(match (column2) against('+test..')) 
       + ...
       + weightn*(match (column1) against('test..'))

但是当结果规模很大时,上面的order by会非常昂贵!

有没有更有效的方法来做到这一点?

最佳答案

使用思维狮身人面像,http://freelancing-god.github.com/ts/en/

关于mysql - 在 MYSQL 中进行加权全文搜索的最有效方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/949423/

相关文章:

Mysql 返回一个不正确的 bigint 结果,非常奇怪的错误

php - 如何在 PHP 中创建 HTML 抓取器并使其正常工作?

php - 讨论 MySQL 数据库结构

mysql - Amazon RDS 与使用 MySQL 的 EC2 各自的优势/限制是什么?

mysql - 防止联合全文搜索中的重复结果

php - 使用 utf8 的 MySQL 全文搜索(波斯语/阿拉伯语)

php - 我如何使用全文,例如 Like

eclipse - 在Eclipse中建立索引全文搜索?

php - 选择特定距离内的点

postgresql - 我能否以编程方式配置 PostgreSQL 以不消除全文搜索中的停用词?