gpt4 book ai didi

php - mysql 和 php FULLTEXT 搜索做得更多,但做得不多?

转载 作者:行者123 更新时间:2023-11-29 03:51:40 25 4
gpt4 key购买 nike

在这个问题上列出: MySQL problem - COMPLETE server overrun! Please advise都是我的服务器详细信息,所以我不必在这里重写它们。

所以我有一个与 mysql 数据库交互的 PHP 脚本。2 天前,由于我的用户的许多请求,我已经从经典的“select * from table where column like 'blabla' and column like 'lablab'”切换到全文搜索。已编入索引,经过测试,一切顺利。上类2天,已经收到一袋投诉。

搜索确实更好,那就是如果你使用完整的词...... :(

尝试搜索“apple”,您会发现几乎相同的结果。

尝试搜索“apple computer at low prices”,全文搜索远高于任何 LIKE 搜索

尝试搜索“ple”,您可以使用经典方法获得完整的结果列表...但是使用全文搜索时,一大堆“未找到”文本出现在您面前...

很抱歉到目前为止让它听起来如此富有诗意...:|

有什么解决方法吗?让全文使用一些奇怪的通配符?像 %foo% 应该给我带来 ffoork、flfooor 等...

对于那些问的人,是的,除了语法、简单的表达式和基本函数之外,我真的不知道我使用 mysql 的方式。

请帮我提供代码片段或链接到某种解决此问题的方法...如果可能的话,我宁愿不使用某些第 3 方 mysql 搜索引擎使我的存在复杂化,但作为最后的手段......

非常感谢您!干杯!

对不起,我忘记放上我的代码了:

$query="SELECT *, 
CASE when title like '%".$s."%' then 1 else 0 END as titlematch,
CASE when tags like '%".$s."%' then 1 else 0 END as tagsmatch,
MATCH (title, tags) AGAINST ('".$s."') AS relevance
FROM videos
WHERE MATCH(title, tags) AGAINST ('".$s."' IN BOOLEAN MODE)
HAVING relevance > 0
ORDER by titlematch desc, tagsmatch desc, relevance desc, `datetime` desc, `views` desc
";

最佳答案

为什么不在 PHP 搜索功能中使用条件,如果搜索的是单个单词或几个字符,则使用好的 ol' LIKE 搜索?

关于php - mysql 和 php FULLTEXT 搜索做得更多,但做得不多?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6472688/

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