社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  DATABASE

搜索MySQL文本列的最佳方式

Miguel Moreira • 3 年前 • 1189 次点击  

我的产品存储在MySQL数据库中,这是一个Wordpress网站,但我的数据存储在自定义表中。我需要搜索产品,我目前面临一些性能问题,我希望有人能帮助我或为我指路。

由于我每天收到一个文件(*.csv)来更新我的所有产品(添加、更新或删除产品),我有一个读取文件和填充/更新表格的过程。在这个过程中,我添加了一个步骤来过滤数据,并将任何特殊字符替换为“非特殊”字符(例如:将“Ô替换为“a”)。

到目前为止,我已经有了一个与产品表(products)相关的表(products_search),我用这个表进行搜索。当用户搜索某个内容时,我修改输入以替换特殊字符,因此搜索将直接在表上进行。

问题是: 在“文本”列中搜索很慢,甚至在该列上添加索引。我现在正在这样搜索:

select * from products_search
     where description like %search_word_1%
        or description like %search_word_2% ... 

如果我得到一个结果,我将获得ID和产品表的关联,并获得可能需要向用户显示的所有信息。

寻找的解决方案: 我正在寻找一种在产品搜索表上搜索性能更好的方法。据我所知,wordpress搜索引擎只对“posts”表起作用。有什么方法可以更快地搜索吗?也许是使用插件,或者只是改变搜索的方式。

谢谢大家

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/132373
 
1189 次点击  
文章 [ 1 ]  |  最新文章 3 年前