重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
select 公司,(case when grouping(部门) = 1 then ’公司合计' else '部门' end) as 部门,sum(工资)工资总额
创新互联制作网站网页找三站合一网站制作公司,专注于网页设计,网站建设、网站制作,网站设计,企业网站搭建,网站开发,建网站业务,680元做网站,已为上千服务,创新互联网站建设将一如既往的为我们的客户提供最优质的网站建设、网络营销推广服务!
from a
group by rollup(公司,部门)
;
上面这个,数据是先出(公司+部门)的组合的 key(得到该公司的每个部门的总和),最后出一个 公司 的总和(该公司所有部门总和)。
你也可以用
...
group by grouping sets(公司,部门)
得到公司的总和与部门的总和,这个略有不同,但可以通过不同的括号层次组合出你想要的,比如
...
group by grouping sets((公司,部门),公司,部门)
另外还有:
...
group by cube(公司,部门)
这个是算出每个公司的总和(不考虑哪个部门的),与每个部门的总和(不考虑哪家公司的),用 cube 汇总是用在多个公司相同的部门的时候,比如多个分公司都有财务部的话,如果你这个 DEPNO 在数据库中每家公司的每个部门都拥有完全不同的值的话就不适用。
Oracle Select语句的作用是在表单中查询数据,本文将为大家带来Select语句的详细用法介绍。
SELECT语句使用方法
在Oracle中,表是由列和行组成。 例如,示例数据库中的customers表具有以下列:customer_id,name,address,website和credit_limit。customers表中这些列中也有对应的数据。
要从表的一个或多个列(column_1,column_2,…,column_n)中检索数据,请使用以下语法的SELECT语句:
在这个SELECT语句中:
首先,需要指定要查询数据的表名。
其次,指定想要返回数据的列。 如果需要返回多个列,则需要用逗号(,)将这些列分隔。
注意,SELECT语句非常复杂,由许多子句组成,如ORDER BY,GROUP BY,HAVING,JOIN。 为了简单起见,在本教程中,我们只关注SELECT和FROM子句的用法。
教程来源:树懒学堂_一站式数据知识平台_Oracle Select语句
试试这样:
SELECT a.Deptcode 部门,
a.id ID,
a.NAME 姓名,
a.ITEM 物品名称,
sum(a.QTY) 数量,
sum(a.COST) 金额
from itemlist A
where a.Fee_Date=TO_DATE('2015-3-29','YY-MM-DD')
AND a.FEE_DATE=TO_DATE('2015-3-30','YY-MM-DD')
AND a.QTY'0'
group by a.Deptcode ,
a.id ,
a.NAME ,
a.ITEM
order by 6 desc