为了账号安全,请及时绑定邮箱和手机立即绑定

sql中count函数的使用?

sql中count函数的使用?

天涯尽头无女友 2019-02-07 11:07:01
sql中count函数的使用
查看完整描述

4 回答

?
慕码人8056858

TA贡献1803条经验 获得超6个赞

count(1)--等於count(*)

数据库引擎会把count(1)改为count(*)
主要是个人习惯

补充一下查看方法:
以下方式查看,楼上的不要误导.

SET SHOWPLAN_TEXT on ;
go
select count(1) from 表名
go
SET SHOWPLAN_TEXT off ;

查看完整回答
反对 回复 2019-03-22
?
慕后森

TA贡献1802条经验 获得超5个赞

如果你的数据表没有主键,那么count(1)比count(*)快
如果有主键的话,那主键(联合主键)作为count的条件也比count(*)要快
如果你的表只有一个字段的话那count(*)就是最快的啦

count(*) count(1) 两者比较。主要还是要count(1)所相对应的数据字段。
如果count(1)是聚索引,id,那肯定是count(1)快。但是差的很小的。
因为count(*),自动会优化指定到那一个字段。所以没必要去count(?),用count(*),sql会帮你完成优化的.

它们的执行结果是一样的

查看完整回答
反对 回复 2019-03-22
?
撒科打诨

TA贡献1934条经验 获得超2个赞

*指的是所有的记录
1指的是标记为1的记录
count(*)表示统计表中所有的记录,不考虑任何条件
count(值)表示统计“值”的记录,限制条件为“值”

查看完整回答
反对 回复 2019-03-22
?
德玛西亚99

TA贡献1770条经验 获得超3个赞

count是统计的函数 count是统计表中所有字段满足where里条件的行数,
这里的count (1)=count(*)应该是统计这个表中满足where里条件的行数 并把值赋给@tempID

查看完整回答
反对 回复 2019-03-22
  • 4 回答
  • 0 关注
  • 1348 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信