数据库中count(all 表达式)函数怎麽用啊
- 提问者网友:蔚蓝的太阳
- 2021-05-16 04:33
- 五星知识达人网友:低血压的长颈鹿
- 2021-05-16 06:05
返回组中项目的数量。
语法COUNT ( { [ ALL | DISTINCT ] expression ] | * } )
参数ALL
对所有的值进行聚合函数运算。ALL 是默认设置。
DISTINCT
指定 COUNT 返回唯一非空值的数量。
expression
一个表达式,其类型是除 uniqueidentifier、text、image 或 ntext 之外的任何类型。不允许使用聚合函数和子查询。
*
指定应该计算所有行以返回表中行的总数。COUNT(*) 不需要任何参数,而且不能与 DISTINCT 一起使用。COUNT(*) 不需要 expression 参数,因为根据定义,该函数不使用有关任何特定列的信息。COUNT(*) 返回指定表中行的数量而不消除副本。它对每行分别进行计数,包括含有空值的行。
以上是SQL Server联机丛书的解释,也就是说,Count聚合函数的All参数是默认的,不用去管,表达式是指你需要查询列数的表达式,例如你要查成绩表中有多少成绩数据,可以使用
Select Count(*) from 成绩表
如果你要查成绩表中按成绩分类有多少类成绩数据,则可以使用
Select Count(DISTINCT 成绩) from 成绩表
这里加DISTINCT 就是说,只查询不同成绩的数据用于分类,如果表中的数据是:
成绩 姓名 科目
100 张三 数学
90 张三 语文
90 李四 数学
80 李四 语文
那么结果就是
100
90
80
如果要查各成绩分类中各有多少个学生,可以使用:
Select 成绩,Count(*) from 成绩表 Group By 成绩
则结果为:
100 1
90 2
80 1
- 1楼网友:痴妹与他
- 2021-05-16 08:40
- 2楼网友:零点过十分
- 2021-05-16 07:05