oracle 多个字段查询其中一个字段求和
数据
创新互联专业提供移动服务器托管服务,为用户提供五星数据中心、电信、双线接入解决方案,用户可自行在线购买移动服务器托管服务,并享受7*24小时金牌售后服务。
create table test
(fbm int,
fxm varchar(10),
ftem varchar(10),
fje int);
insert into test values (1,'张三','吃饭',20);
insert into test values (1,'张三','睡觉',21);
insert into test values (1,'张三','起床',22);
insert into test values (4,'落笔','跑步',23);
insert into test values (5,'萝卜','运动',24);
commit;
语句:
select t.* from
(select * from test
union all
(select fbm,fxm,'合计',sum(fje) fje from test group by fbm,fxm)) t
order by fbm,case when ftem ='合计' then 1 else 0 end;
结果:
这样?
oracle 中 sum 如何使用,
使用如下:sum是求和函数,例如:select sum(列名) from 表名,用于计算列的总和。
sum是求指定字段下所有数据的相加总和,select sum(o.amount) from pos_order o 意思就是求出amount这个字段下的数据总和。
1、sum为聚合函数:是 SQL语言中一种特殊的函数:聚合函数,SUM, COUNT, MAX, MIN, AV等。这些函数和其它函数的根本区别就是它们一般作用在多条记录上。
2、其他举例:SELECT SUM(population) FROM COUNTRY ,这里的SUM作用在所有返回记录的population字段上,结果就是该查询只返回一个结果,即所有国家的总人口数。
扩展资料
一、应用
Transact-SQL编程语言提供下列聚合函数:
1、AVG 返回指定组中的平均值,空值被忽略。
例:select prd_no,avg(qty) from sales group by prd_no
2、 COUNT 返回指定组中项目的数量。
例:select count(prd_no) from sales
3、 MAX 返回指定数据的最大值。
例:select prd_no,max(qty) from sales group by prd_no
4、 MIN 返回指定数据的最小值。
例:select prd_no,min(qty) from sales group by prd_no
5、 SUM 返回指定数据的和,只能用于数字列,空值被忽略。
例:select prd_no,sum(qty) from sales group by prd_no
6、 COUNT_BIG 返回指定组中的项目数量,与COUNT函数不同的是COUNT_BIG返回bigint值,而COUNT返回的是int值。
例:select count_big(prd_no) from sales
二、Oracle
Oracle数据库系统是美国Oracle公司(甲骨文公司)提供的以分布式数据库为核心的一组软件产品,是目前最流行的C/S或B/S体系结构的数据库之一,在数据库领域一直处于领先地位。
Oracle数据库是目前世界上使用最为广泛的数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类数据操作环境。
作为一个通用的数据库系统,Oracle具有完整的数据管理功能;作为一个关系数据库,Oracle是一个完备关系的产品;作为分布式数据库,Oracle实现了分布式处理功能。因此,Oracle数据库是一种高效率、可靠性好的适应高吞吐量的数据库解决方案。
参考资料来源:百度百科:聚合函数
百度百科:SQL数据库
在 oracle 如何计算 两个日期间的 秒数、分钟数、小时数、天数、周数、月数、年数
时间,在数据库里实际是以长整型表示..即1900-1-1日到当前的天数.于是不难理解.时间是可以做减法的.
当然,为了简便,规定差值1为一天的,如果当前时间+365即明年的4月2日22:49:40秒.
那么算下来,1秒即为:1/(24*3600)=0.00001157
至于分钟,小时,周数等等,都是些函数转换.没啥希奇
oracle 中如何将查询到的i.suc_amount按x分别进行小计,最后总计,应该是用rollup,sql应该怎么改?
你试试
Select o.org_desc || '_' || i.b_company x,
i.trade_time,
i.cust_name,
i.order_id,
sum(i.suc_amount) over(partition by o.org_desc || '_' || i.b_company),
i.plug_id,
i.b_company,
sum(i.suc_amount) over()
from t_ec_trade_info i, t_ec_org_mapping o
where i.b_company = o.org_biz_numb
and (i.b_company is not null)
order by i.b_company desc
当前名称:oracle如何算小计,oracle估算表大小
文章位置:http://scgulin.cn/article/hecsig.html