`

count(1) ,count(列名),count(*)查询区别

 
阅读更多
执行效果上:  
count(*)包括了所有的列,相当于行数,在统计结果的时候,不会忽略列值为NULL  
count(1)包括了忽略所有列,用1代表代码行,在统计结果的时候,不会忽略列值为NULL  
count(列名)只包括列名那一列,在统计结果的时候,会忽略列值为空(这里的空不是只空字符串或者0,而是表示null)的计数,即某个字段值为NULL时,不统计



执行效率上:  
列名为主键,count(列名)会比count(1)快  
列名不为主键,count(1)会比count(列名)快  
如果表多个列并且没有主键,则 count(1) 的执行效率优于 count(*)  
如果有主键,则 select count(主键)的执行效率是最优的  
如果表只有一个字段,则 select count(*)最优。
---------------------
作者:BigoSprite
来源:CSDN
原文:https://blog.csdn.net/ifumi/article/details/77920767
分享到:
评论

相关推荐

    为什么阿里巴巴禁止使用 count(列名)或 count(常量)来替代 count(*)1

    介绍完了COUNT(*),接下来看看COUNT(1),对于,这者到底有没有区别,上的说法众说纷纭。有的说 COUNT(*) 执时会转换成 COUNT(1) ,所

    【优化】COUNT(1)、COUNT()、COUNT(常量)、COUNT(主键)、COUNT(ROWID)、COUNT(非空列)等

    BLOG_Oracle_lhr_【优化】COUNT(1)、COUNT()、COUNT(常量)、COUNT(主键)、COUNT(ROWID)、COUNT(非空列)、COUNT(允许为空列)、COUNT(DISTINCT 列名).pdf

    count(1)、count(*)与count(列名)的执行区别详解

    执行效果: 1. count(1) and count(*) 当表的数据量大些时,对表作分析之后,使用count(1)还要比使用count(*)用时...所以没必要去count(1),用count(*),sql会帮你完成优化的 因此: count(1)和count(*)基本没有差别!

    Select count(*)、Count(1)和Count(列)的区别及执行方式

    在SQL Server中Count(*)或者Count(1)或者Count([列])或许是最常用的聚合函数。很多人其实对这三者之间是区分不清的。本文会阐述这三者的作用,关系以及背后的原理。  往常我经常会看到一些所谓的优化建议不使用...

    解析关于SQL语句Count的一点细节

    count语句支持*、列名、常量、变量,并且可以用distinct关键字修饰, 并且count(列名)不会累计null的记录。下面随便用一些例子示范一下count的规则:比如对如下表做统计,所有列这里都用sql_variant类型来表示。 代码...

    python获取Pandas列名的几种方法

    1.链表推倒式 data = pd.read_csv('data/Receipt code January minute trading volume.csv') print([column for column in data]) #打印结果 ['COUNT', 'SUCC', 'FAIL', 'WAIT PAY', 'SUCCRatio', 'time'] 2.通过...

    SQL查询数据库中符合条件的记录的总数

    2. select count(列名) from table; //统计一列中值的个数 3. select count(*) from table where 字段 = “”; //符合该条件的记录总数 4. sql_count = “select count(*) from article a where 1=1 “; //这条...

    T-SQL高级查询

    1、 包含常规选择列表组件的常规select查询 2、 包含一个或多个表或视图名称的常规from语句 3、 可选的where子句 4、 可选的group by子句 5、 可选的having子句 # 示例 查询班级信息,统计班级学生...

    mysql查询语句汇总.docx

    mysql查询语句汇总 MySQL查询语句是数据库操作的核心部分,涵盖了数据的增删改查等多个方面。由于篇幅限制,我将尽量简洁而全面地介绍MySQL查询语句的各个方面,以满足您的需求。 一、基础查询 基础查询是最常用的...

    MySQL面试题经典40问!(全)(含答案解释)

    8、 count(1)、 count(*) 与 count(列名) 的区别? 9、 exist 和 in 的区别? 10、 truncate、 delete 与 drop 区别? 11、 union 与 union all 的区别? 12、 group by 和 distinct 的区别? 13、 Blob 和 text 有...

    MySQL经典面试题(含答案).zip

    count(1)、count(*) 与 count(列名) 的区别? exist和in的区别? truncate、delete与drop区别? union与union all的区别? group by 和 distinct 的区别? Blob和text有什么区别? 常见的存储引擎有哪些? myisam和...

    java万能DAO

    System.out.println("查询列名" + column + "在实体中无方法名匹配,值将不会被设置!"); } return m; } /** * 删除列分割符 * @return */ private String delLine(String str,String fg){ String ...

    SQL语句大全.docx

    20.Count 查询有多少条数据 21.Max 查询某一列最大值 22.Min 查询某一列最小值 23.Avg 查询某一列的平均值 24.Sum 查询某一列的总和 25.分组查询 group by 列 26.分组条件查询 having 查询平均年龄大于...

    SQL常用语句.zip

    基本语法为“SELECT 列名 FROM 表名 WHERE 条件”。例如,查询名为“employees”的表中所有员工的姓名和年龄,可以使用“SELECT name, age FROM employees”。 ORDER BY语句:用于对查询结果进行排序。例如,按年龄...

    sqlserver自定义函数

    having count(*)>1 order by count desc ---删除重复的数据:2行 delete from w01 where id not in (select max(id) from w01 group by gs903,gs1002) ---看看删除后还有没有重复记录:0 select gs903,gs1002,...

    Mysql使用insert插入多条记录 批量新增数据

    ERROR 1136: Column count doesn't match value count at row 1 而正确的写法应该是这样: INSERT INTO t able1(i,name) VALUES(1,'小明'),(2,'小强'),(3,'小杜'),(4,'小李'),(5,'小白'); 当然,这种写法也可以省略...

    MySQL查询语句常见操作语句格式代码.docx

    SELECT column1, column2, ... FROM table_name WHERE condition; 其中,SELECT后面是要检索的列名,FROM指定了数据来源的表名,而WHERE子句则用于设置筛选条件。例如,要查询名为employees的表中所有年龄大于...

    Java使用表格显示查询结果.rar

    //列名  Object[][] rowData=new Object[5][4]; //表格数据  try {   Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); //加载驱动器   Connection con=DriverManager.getConnection(dbURL...

    数据查询:学生管理系统练习

    studentdb数据库还是用的上篇文章的, 害,一直以为列名要用英文,知道可以用汉字时,就把自设的英文都改成汉字,舒服了。上篇文章链接:https://blog.csdn.net/weixin_43912621/article/details/105517325. (1)在...

    情境四-公司管理数据库系统的查询.doc

    查询语句如下: SELECT 特长,count(*) 人数 FROM employee GROUP BY 特长 执行结果如下: 特长 人数 —-———-————-—---—-———-—————--—— —---—---——- 唱歌 2 二胡 2 钢琴 2 古筝 2 会计 1 ...

Global site tag (gtag.js) - Google Analytics