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

Count(*)vs count(1)-SQL Server

Count(*)vs count(1)-SQL Server

阿波罗的战车 2019-05-30 13:13:15
Count(*)vs count(1)-SQL Server只是想知道你们中有没有人用Count(1)过关Count(*)如果在性能上有明显的差异,或者这仅仅是一种从过去的日子中养成的传统习惯呢?(具体的数据库是SQL Server 2005.)
查看完整描述

3 回答

?
守着一只汪

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

在SQLServer中,这些语句产生相同的计划。

与大众的观点相反,在甲骨文中,他们也是这样做的。

SYS_GUID()在Oracle中,计算量很大。

在我的测试数据库里,t_even是一张1,000,000

此查询:

SELECT  COUNT(SYS_GUID())FROM    t_even

竞选48秒,因为函数需要计算每个SYS_GUID()返回以确保它不是NULL.

但是,这个查询:

SELECT  COUNT(*)FROM    (
        SELECT  SYS_GUID()
        FROM    t_even        )

竞选但是2秒,因为它甚至没有尝试评估SYS_GUID()(尽管*争论COUNT(*))


查看完整回答
反对 回复 2019-05-30
  • 3 回答
  • 0 关注
  • 838 浏览
慕课专栏
更多

添加回答

举报

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