select count(*)和select count(1)的区别

转载 2016年06月02日 10:08:15

转自:http://blog.csdn.net/hzhsan/article/details/9186831

一般情况下,Select Count (*)和Select Count(1)两着返回结果是一样的

假如表沒有主键(Primary key), 那么count(1)比count(*)快,

如果有主键的話,那主键作为count的条件时候count(主键)最快

如果你的表只有一个字段的话那count(*)就是最快的

count(*) 跟 count(1) 的结果一样,都包括对NULL的统计,而count(column) 是不包括NULL的统计

1、select 1 与 select *的区别
selelct 常量 from ... 对应所有行,返回的永远只有一个值,即常量。所以正常只会用来判断是否有还是没有(比如exists子句)。而select * from ... 是返回所有行的所有列。
性能上的差异,关键看你的from和where子句。比如说如果你的where条件中可以通过索引,那显然 select 1 from ... 的性能比 select * from ... 好。
2、select sum(1)的使用
select count(*)返回所有满足条件的记录数,此时同select sum(1)
但是sum()可以传任意数字,负数、浮点数都可以,返回的值是传入值n*满足条件记录数m

相关文章推荐

Java实现加密算法

转自: http://comtu.github.io/blog/2014/12/01/Java_security.html 目录: Base64 消息摘要算法 MD SHA MAC...

Java加密技术(四)——非对称加密算法RSA

转自 :http://snowolf.iteye.com/blog/381767   接下来我们介绍典型的非对称加密算法——RSA  RSA      这种算法1978年就出现了,它...

Java加密技术(二)——对称加密算法DES&AES

转自:http://snowolf.iteye.com/blog/380034   接下来我们介绍对称加密算法,最常用的莫过于DES数据加密算法。  DES  DES-Data Encrypti...

Java加密技术(三)——PBE算法

转自:http://snowolf.iteye.com/blog/380761     除了DES,我们还知道有DESede(TripleDES,就是3DES)、AES、Blowfish、RC2、R...

java常用的加密算法

转载 http://www.blogjava.net/amigoxie/archive/2014/07/06/415503.html 1、对称加密算法 1.1 定义 对称加密算法是应用较...

MyBatis之传入参数

在MyBatis的select、insert、update、delete这些元素中都提到了parameterType这个属性。MyBatis现在可以使用的parameterType有基本数据类型和Ja...

Java中常用的加密方法(JDK)

加密,是以某种特殊的算法改变原有的信息数据,使得未授权的用户即使获得了已加密的信息,但因不知解密的方法,仍然无法了解信息的内容。大体上分为双向加密和单向加密,而双向加密又分为对称加密和非对称加密(有些...

php学习之道:mysql SELECT FOUND_ROWS()与COUNT(*)用法区别

在mysql中 FOUND_ROWS()与COUNT(*)都可以统计记录,如果都一样为什么会有两个这样的函数呢,下面我来介绍SELECT FOUND_ROWS()与COUNT(*)用法区别 SEL...

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

在SQL Server中Count(*)或者Count(1)或者Count([列])或许是最常用的聚合函数。很多人其实对这三者之间是区分不清的。本文会阐述这三者的作用,关系以及背后的原理。     ...

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

Select count(*)和Count(1)的区别和执行方式     在SQL Server中Count(*)或者Count(1)或者Count([列])或许是最常用的聚合函数。很多人其实对...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)