举例说明:
有这样一个表结构
id 品牌名称 系列名称 型号名称 颜色 说明 时间
123 奔驰 E系列 2017款E200k 舒适版 黑 导航、天窗 2016-12-12:12...
搜索内容如是 “17款E200黑” 就可以搜到以上记录
请问如何实现,都有哪些方法?
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
1.数据不大的话
sql like2.搭建elasticsearch 或其他搜索引擎
数据量小的情况下like足够了,如果数据量大的话可以尝试使用sphinx全文检索,就像你上面的数据,用户搜索"导航 舒适版",都会查询到 123这个条记录,详细http://www.zixuephp.com/mysql...
1.搜索内容能否优化为
17款E200-黑,方便分解为两个字段搜索,如果颜色都是单字,也可以用mb_substr()2.
select * from products where type like '%a%' and color = 'b';(color字段可以添加索引,字段和表名自己修改)数据量不过10万,但是关联的字段有4个之多,其中说明字段内容过200字,sql like不行吧