六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 274|回复: 0

select count (*)、count(1)、count(column)的区别

[复制链接]

升级  42.67%

98

主题

98

主题

98

主题

举人

Rank: 3Rank: 3

积分
328
 楼主| 发表于 2013-1-29 15:28:47 | 显示全部楼层 |阅读模式
   blog迁移至:http://www.micmiu.com
 
select count (*)、count(1)、count(column)的区别如下:
 
<div class="blog_content">  

  • 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(*)就是最快的
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表