gpt4 book ai didi

php - 使用多个单词搜索 MYSQL 并按相关性排序

转载 作者:行者123 更新时间:2023-11-30 01:35:06 25 4
gpt4 key购买 nike

我正在 PHP 中创建一个程序,用户在其中提交一个文件,然后可以根据他们最初创建文件时输入的 6 个类别来搜索该文件。类别存储在一个单元格的表格中,如下所示: category_1category_2category_3 - 它们不在单独的列中

我需要创建一个页面,用户可以在其中填写他们想要搜索的类别,然后将查询提交到 MYSQL 数据库。我希望页面首先对文件与最多类别匹配的行进行排序。

我的问题是如何设置 MYSQL 查询来搜索 6 个类别,然后按类别匹配最多的行对结果进行排序(在有 2 个类别匹配的类别前面显示有 3 个匹配类别的类别) ?

我会贴出我尝试过的代码,但我什至不知道从哪里开始(我使用正则表达式吗?)。任何帮助都会很棒。我熟悉 PHP 和 HTML,但 MYSQL 对我来说很陌生。

最佳答案

您应该研究在 bool 模式下使用 MySQL 的全文搜索。

http://dev.mysql.com/doc/refman/5.5/en/fulltext-boolean.html

特别是当您将类别串联在一个列中时,这很可能是解决问题的好方法。

您需要使用 MyISAM 作为您以此方式搜索的一个或多个表的访问方法。

(小心:如果不使用 bool 模式,全文搜索很难在小 table 上测试;它对小文本语料库的词频感知会产生不可预测的结果。但是使用 bool 模式就可以了。 )

关于php - 使用多个单词搜索 MYSQL 并按相关性排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17015412/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com