数据库查询语句
程序员文章站
2022-05-14 10:17:35
...
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
因为俩条件是 and 你可以分开执行的吧 先in 然后再从结果里面like 应该是可以的吧
推荐阅读
-
Android SQLite数据库版本升级的管理实现
-
使用JDBC从数据库中查询数据的方法
-
Myeclipse链接Oracle等数据库时lo exception: The Network Adapter could not establish the connection
-
mysql优化系列 DELETE子查询改写优化
-
Hibernate中使用HQLQuery查询全部数据和部分数据的方法实例
-
基于Android如何实现将数据库保存到SD卡
-
MySQL5.7.14下载安装图文教程及MySQL数据库语句入门大全
-
ASP.NET连接数据库并获取数据方法总结
-
c#连接sqlserver数据库、插入数据、从数据库获取时间示例
-
c#连接mysql数据库的方法