首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用MySQL在Python语言中高效地查找子串

用MySQL在Python语言中高效地查找子串
EN

Stack Overflow用户
提问于 2010-10-15 13:46:30
回答 2查看 393关注 0票数 0

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

例如,查询“油炸绿色西红柿”将产生:

代码语言:javascript
复制
SELECT * 
FROM articles 
WHERE (title LIKE '%fried%' OR
       title LIKE '%green%' OR
       title LIKE '%tomatoes%)

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

我知道从技术上讲,这是MySQL中全文搜索的目的,但结果的质量并不是很好。

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

谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-10-15 13:51:24

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

票数 2
EN

Stack Overflow用户

发布于 2010-10-15 18:20:40

它们是许多可以使用的全文搜索引擎,比如sphinxApache SolrWhoosh (它是纯python)和Xapiandjango-haystack (如果你使用的是django),它可以与最后3个接口;

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3939776

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档