1.关于count(1),count(*),和count(列名)的区别

  相信大家总是在工作中,或者是学习中对于count()的到底怎么用更快。一直有很大的疑问,有的人说count(*)更快,也有的人说count(列名)更快,那到底是谁更快,我将会在本文中详细介绍一下到底是count(1),count(*)和count(列明)的区别,和更适合的使用场景。   

  往常在工作中有人会说count(1)比count(*)会快,或者相反,首先这个结论肯定是错的,实际上count(1)和count(*)并没有区别

  接下来,我们来对比一下count(*)和count(列)到底谁更快一些

  首先我们执行以下sql,来看一下执行效率(下面sql针对的是ORACLE数据库,大致逻辑为先删除t别,然后在根据dba_objects创建t表,在更新t表根据rownum)

大学生就业培训,高中生培训,在职人员转行培训,企业团训

 1 drop table t purge; 2 create table t as select * from dba_objects; 3 --alter table T modify object_id  null; 4 update t set object_id =rownum ; 5 set timing on  6 set linesize 1000 7 set autotrace on --开启跟踪 8  9 select count(*) from t;10 /11 select count(object_id) from t;12 /

大学生就业培训,高中生培训,在职人员转行培训,企业团训

 

  然后咱们分别看一下“select count(

延伸阅读

学习是年轻人改变自己的最好方式-Java培训,做最负责任的教育,学习改变命运,软件学习,再就业,大学生如何就业,帮大学生找到好工作,lphotoshop培训,电脑培训,电脑维修培训,移动软件开发培训,网站设计培训,网站建设培训学习是年轻人改变自己的最好方式