基于MySQL的Python高效子串搜索

2024-05-14 22:01:00 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试对我的网站进行实时搜索。在给定字符串中标识单词或单词的一部分的人。然后,即时结果在与查询匹配的地方加下划线。在

例如,查询“油炸绿番茄”将得到:

SELECT * 
FROM articles 
WHERE (title LIKE '%fried%' OR
       title LIKE '%green%' OR
       title LIKE '%tomatoes%)

这对于一个非常小的数据集非常有效。但是,一旦数据库中的记录数增加,这个查询很快就会变得低效,因为它不能利用索引。在

我知道从技术上讲,这就是MySQL中全文搜索的目的,但是结果的质量并没有那么好。在

有什么方法可以在保持查询效率的同时获得高质量的子字符串搜索?在

谢谢。在


Tags: or数据字符串fromtitle网站地方where
2条回答

它们是许多全文搜索引擎,可以像sphinxApache SolrWhoosh(纯python)和Xapian一样使用。django-haystack(如果您使用的是django),它可以与最后3个接口

Sphinx将帮助您在大量数据中快速搜索

相关问题 更多 >

    热门问题