SELECT goods_name
FROM ecs_goods
WHERE cat_id
IN ('9','10','12','13','14') AND goods_name
LIKE '%3%'
请给指出问题
正确格式是什么样子请教一下大神
SELECT goods_name
FROM ecs_goods
WHERE cat_id
IN ('9','10','12','13','14') AND goods_name
LIKE '%3%'
请给指出问题
正确格式是什么样子请教一下大神
语句没问题,就是只要数据量大一点点就巨慢无比,而且唯一可优化的点就是给cat_id加索引。但是如果没猜错这个字段是分类字段,都是重复值,所以加了索引也没有什么用。
类似这样的SQL如果很多,建议用检索系统做,Elastic search或者Solr。
SELECT goods_name FROM ecs_goods WHERE (cat_id = '9'or cat_id ='10' or cat_id ='12' or cat_id ='13' or cat_id ='14') AND goods_name LIKE '%3%'
最好不要用in
1 回答4.2k 阅读✓ 已解决
3 回答1.9k 阅读✓ 已解决
2 回答2.3k 阅读✓ 已解决
2 回答858 阅读✓ 已解决
1 回答1.4k 阅读✓ 已解决
2 回答2.3k 阅读
1 回答719 阅读✓ 已解决
格式没错,是要看什么问题?