count(*),count(1),count(c_bh)效率问题

平时写count()语句时,括弧里面写的是什么? count(*)?count(1)?count(主键)? 有对比过他们的效率,看过执行计划吗?
针对上面疑问,楼主做了实验,并得出以下结论:

1、abase执行计划:count()、count(1)是选取了一个整型索引字段进行查询的。
2、sybase执行计划:count(
)、count(1)、count(主键)是选取了一个整型索引字段进行查询的。
3、abase执行效率:count()>=count(1)>=count(整型索引字段)>count(字符索引字段)>count(字符主键)>count(整型非索引字段)
4、sybase执行效率:count(
)=count(1)=count(整型主键)>count(整型索引字段)>count(字符索引字段)>count(整型非索引字段)
5、abase与sybase的count() 括号里面都是是判断是否为空的,空则不参与计算
6、非特殊场景查询,统一要求使用count(*)

原文地址:https://www.cnblogs.com/zhangfx01/p/14872389.html