mysql和php FULLTEXT搜索功能更多,但是做得不少?

And*_*tes 1 php mysql search full-text-search

在这个问题上列出: MySQL问题 - COMPLETE服务器溢出!请告知 我的所有服务器详细信息,因此我不必在此重新编写它们.

所以我有一个与mysql DB交互的PHP脚本.2天前,由于我的用户提出了很多要求,我已经从clasic"select*from table where'像'blabla'这样的列和像'lablab'这样的列'切换到全文搜索.索引,测试,好去.工作2天,已收到一袋抱怨.

搜索确实更好,即如果你使用完整的单词...... :(

尝试搜索"苹果",你会发现几乎相同的结果.

尝试以低价格搜索"苹果电脑",全文搜索优先于任何LIKE搜索

尝试搜索"ple",你可以用经典的方法得到一个完整的结果列表...但是一个很大的"没有找到"文字放在你面前,全文搜索...

很抱歉让它听起来如此富有诗意......:|

这有什么解决方法吗?使全文使用一些疯狂的通配符?像%foo%应该带给我ffoork,flfooor等...

对于那些你问的人,是的,我还没有比语法,简单表达式和基本功能更了解mysql.

请帮我一个代码片段或链接到一些方法来解决这个问题......如果可能的话,我宁愿不要让我的存在与一些第三方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
    ";
Run Code Online (Sandbox Code Playgroud)

Teo*_*.sk 5

为什么不在PHP搜索功能中使用条件,如果搜索了一个单词或几个字符,请使用好的"LIKE搜索"?