mysql in 查询, 里面的每个条件都指定返回条数,能否实现,怎么写?
高洛峰
高洛峰 2017-04-17 16:13:28
0
2
773

mysql in 查询, 里面的每个条件都指定返回条数,能否实现,怎么写?

SELECT column_name(s)
FROM table_name
WHERE column_name IN (value1,value2)

table_name 里面包含value1和value2的值有很多条,能否指定返回条数。

类似:

select * from table_name where column_name = value1 limit 5;
select * from table_name where column_name = value2 limit 5;

或有其他方法实现这个查询?

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(2)
小葫芦

就是or/in/union all的转换,性能也是union all比较好,也能满足你所说的返回指定条数。

(select * from table_name where column_name = value1 limit 5)
union all
(select * from table_name where column_name = value2 limit 5);
小葫芦

你这个sql与你的描述好像并不一致
SELECT column_name(s),count(column_name(s))
FROM table_name
WHERE column_name(s) IN (value1,value2,...)
group by column_name(s)

这种写法逻辑上是没什么问题,但写完之后还请看看执行计划,我如果记得不错的话,mysql的in的效率并不高,如果是单张表的话,我也没想出来什么好主意

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!