count(*|[distinct|all]x)
统计数据表选中行 x 列的合计值。
* 表示对满足条件的所有行统计,不管其是否重复或有空值 (NULL)
all 表示对所有的值统计,默认为 all
distinct 只对不同的值统计,如果有参数 distinct 或 all,需有空格与 x (列) 隔开,均忽略空值 (NULL)
x 可为数字、字符、日期型及其它类型的字段。
数字值
环境:
-- 删除用户表 drop table t_user; -- 创建用户表 create table t_user(xm varchar(8),sal number(7,2)); -- 插入数据 insert into t_user(xm, sal) values('ZhangSan', 10000); insert into t_user(xm, sal) values('LiSi', 8500); insert into t_user(xm, sal) values('WangWu', 12000); insert into t_user(xm, sal) values('WangWu', 12000); insert into t_user(xm, sal) values('',1111.11); -- 提交事务 commit;
执行统计:
SQL> select count(*),count(xm),count(all xm),count(distinct sal),count(all sal),count(sal),sum(1) from t_user; COUNT(*) COUNT(XM) COUNT(ALLXM) COUNT(DISTINCTSAL) COUNT(ALLSAL) COUNT(SAL) SUM(1) ---------- ---------- ------------ ------------------ ------------- ---------- ---------- 4 4 4 3 4 4 4