暂无图片
MySQL 以下2个SQL在查询性能上有什么区别吗?
我来答
分享
快go💨
2022-01-25
MySQL 以下2个SQL在查询性能上有什么区别吗?
select count(distinct if(a="true", a, null) from XX 

select count(distinct a) from xx where a = "true"

我来答
添加附件
收藏
分享
问题补充
2条回答
默认
最新
DarkAthena

2的效率应该会高些,因为2把数据过滤了一次,需要统计的数据行数减少了;而且如果a字段有索引或者分区的话,效果更明显

暂无图片 评论
暂无图片 有用 0
暂无图片
薛晓刚

看看执行计划,目测推算差别不大。估计效果差不多,全表排序,都不好。

暂无图片 评论
暂无图片 有用 0
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏