ITPub博客

首页 > Linux操作系统 > Linux操作系统 > count(*) 和count(column)之区别

count(*) 和count(column)之区别

原创 Linux操作系统 作者:lwitpub 时间:2012-12-06 23:42:23 0 删除 编辑

select count (*)、count(1)、count(column)的区别如下:

•count(1) 中的 1 并不是表示为第一个 column
•count(*) 跟 count(1) 的结果一样,包括对NULL的统计
•count(column) 是不包括对NULL的统计
•如果表沒有主键(Primary key), 那么count(1)比count(*)快
•如果表没有主键,只建了索引,那么count(*),count(1)是一样的,都是TABLE ACCESS FULL ,而count(索引)则是INDEX FULL SCAN
•如果有主键的話,那count(主键)最快,那么count(*),count(1),以及count(主键)是一样的,都是INDEX FULL SCAN
•如果你的表只有一个字段的话那count(*)就是最快的

参考下官网上的有关问答:

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/628922/viewspace-750697/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2009-05-08

  • 博文量
    107
  • 访问量
    418836