在oracle中按要求统计行数,怎么运用sum和count函数?

日期
2010-7-15
2010-7-15
2010-7-16
2010-7-17
执行后的结果是:
日期: 条数
2010-7-15 2
2010-7-16 1
2010-7-17 1

1、首先在oracle中avg函数,使用聚合函数在计算平均值时,会报空值排除在外。

2、刚才在计算的时候结果是550,而comm列的总各为2200 所以计算平均时是只计算了除了空值的行。

3、需要注意的是,avg函数不能单独使用在where条件中不然会报如下错误。

4、如果想要查询出大于平均值的结果,需要使用group by ...having 子句。

5、然后用count函数用来统计列的总行数,就完成了。

温馨提示:内容为网友见解,仅供参考
第1个回答  2017-07-09

在oracle中,sum一般用于统计某列的和,count用于统计行数。

工具:oracle 10g

步骤:

1、oracle中emp表有如下数据:

2、要求按deptno字段统计每个deptno下有多少行数据,可用如下语句:

select deptno,count(*) from emp group by deptno;

3、查询结果:

4、要求按deptno字段统计每个deptno下的sal的和是多少,可用如下语句:

select deptno,sum(sal) from emp group by deptno;

5、查询结果:

其中:sum、count等在oracle中叫聚合函数,聚合函数对一组值执行计算并返回单一的值。除了 count以外,聚合函数忽略空值。聚合函数经常与 select语句的group by子句一同使用。

第2个回答  2017-07-01
如果按某些字段统计行数,而这些字段有变化,用sum 和 decode 函数比较好吧
第3个回答  2013-07-25
group by试试追问

我知道用group by和count 但不知道怎么实现

追答

SYSDBA@TEST> create table t1(c1 int);
CREATE TABLE
SYSDBA@TEST> insert into t1 values(1);
INSERT 1 0
SYSDBA@TEST> insert into t1 values(1);
INSERT 1 0
SYSDBA@TEST> insert into t1 values(2);
INSERT 1 0
SYSDBA@TEST> insert into t1 values(2);
INSERT 1 0
SYSDBA@TEST> insert into t1 values(2);
INSERT 1 0
SYSDBA@TEST> insert into t1 values(3);
INSERT 1 0
SYSDBA@TEST> select c1, count(*) from t1 group by c1 order by c1;;
C1 | COUNT
----+-------
1 | 2
2 | 3
3 | 1
(3 行)

你是这个意思吧

追问

我再试试 等等看有没更好答案 谢了

追答

select c1, count(*) from t1 group by c1 order by c1
这条语句不是已经满足你的要求了吗?你觉得还有什么问题?

本回答被提问者采纳

在oracle中按要求统计行数,怎么运用sum和count函数?
1、首先在oracle中avg函数,使用聚合函数在计算平均值时,会报空值排除在外。2、刚才在计算的时候结果是550,而comm列的总各为2200 所以计算平均时是只计算了除了空值的行。3、需要注意的是,avg函数不能单独使用在where条件中不然会报如下错误。4、如果想要查询出大于平均值的结果,需要使用group by ....

oracle中的分组函数有哪些,具体怎么用?
常用的函数有:1、COUNT ()返回查寻的行数 例如:select count(*) from table;2、MAX() 返回表达式的最大值 例如:select a, max(b) from table group by a;3、MIN() 返回表达式的最小值 例如:select a, min(b) from table group by a;4、SUM() 返回表达式的总合 例如:select a, ...

oracle中的“sum”如何使用?
使用如下:sum是求和函数,例如:select sum(列名) from 表名,用于计算列的总和。1、sum为聚合函数:是 sql语言中一种特殊的函数:聚合函数,SUM, COUNT, MAX, MIN, AVG等。这些函数和其它函数的根本区别就是它们一般作用在多条记录上。2、其他举例:SELECT SUM(population) FROM COUNTRY ,这里的SU...

oracle 中 sum 如何使用,
使用如下:sum是求和函数,例如:select sum(列名) from 表名,用于计算列的总和。sum是求指定字段下所有数据的相加总和,select sum(o.amount) from pos_order o 意思就是求出amount这个字段下的数据总和。1、sum为聚合函数:是 SQL语言中一种特殊的函数:聚合函数,SUM, COUNT, MAX, MIN, AV等。

如何在oracle数据库中查询记录总条数
1、第一步,查询该库中的所有表,测试sql,代码见下图,转到下面的步骤。2、第二步,执行完上面的操作之后,查询有多少个数据表,见下图,转到下面的步骤。3、第三步,执行完上面的操作之后,在TEST的开头编写一个查询表的脚本,每个表中的记录数,代码见下图,转到下面的步骤。4、第四步,执行完...

oracle 统计每行 列值 出现的 次数
可以使用decode函数然后使用汇总 以表testdec(t1,t2)为例 select '1的总数',sum(decode(t1,1,1,0)) t1_count,sum(decode(t2,1,1,0)) t2_count from testdecunionselect '2的总数',sum(decode(t1,2,1,0)) t1_count,sum(decode(t2,2,1,0)) t2_count from testdecunionselect '3...

在oracle生产库中,我的一个表的数据有10亿行记录,怎么快速计算有多少...
你的这个表有主键没?如果有主键,假设你的这个表的主键是sid 那么可以使用 select count(sid) from tablename 来查询会比你用count(*) 要快的多。使用主键字段会用到主键索引,会比你去扫描整个表要快的多。oracle 里面统计某个表的数据行的数量只有使用count函数来求。如果数据量非常大你应该考虑...

oracle中列数据可以用运算符,行数据的运算符怎么用
题主说的是汇总行数据吧,可以用sum函数。汇总函数通常和group by一起使用 另外,select 后面根据需要选择显示的列 祝好运,望采纳。

ORACLE根据某个字段的特定值进行统计
1、预置数据 2、统计查询:如果一个用户ID只算一次,就将最后的SUM改为COUNT就行了

SUM怎么和COUNT结合
oracle select sum(a) from ( select count (*) as a from biao1 union all select count (*) as a from biao2 union all select count (*) as a from biao3 )

相似回答