请哪位高手帮我写一条sql从前面7列数据库中 得到第10列的 。情况是这样的: 把一个项目 :大厦一期里面 所有的合同名字汇总,每一个合同的最高价格汇总(121999=100000+10000+1999+10000)累计付款 就等于 该列的全部项的和 不知道如何实现》?请大家帮忙下
解决方案 »
- sql中关于in的效率问题
- 请问Oracle有什么小巧点的第三方备份工具吗?
- 送分100分:如何用SQL脚本将ACCESS的数据导入ORACEL10
- 一个列转行的问题
- 请教ORACLE的一个BUG:ORA-00001: unique constraint ... violated
- oracle 10g tns 问题 高手请进
- 我在编oracle&delphi数据库程序,oracle中的中文不能正确显示,为#号!
- 求一个简单的触发器!!!马上揭帖!
- ACCESS通过ODBC访问数据库有的记录能修改有的记录不能修改???
- Oracle插入百万级数据对表空间的影响
- Oracle中想查询某个表的访问权限被授予给了哪个用户,怎么办?
- 从sql2000数据库导出表导入到oracle
with t as
(
select 1 as "序号", '大厦一期' as "工程项目", '测试合同1' as "合同名称", 100000 as "最新造价", 90000 as "累计付款" from dual
union all
select 2 as "序号", '大厦一期' as "工程项目", '测试合同2' as "合同名称", 5000 as "最新造价", 0 as "累计付款" from dual
union all
select 3 as "序号", '大厦二期' as "工程项目", '测试合同3' as "合同名称", 50000 as "最新造价", 45000 as "累计付款" from dual
)
select case when grouping("工程项目") = 1 then '合计'
else "工程项目"
end as "工程项目",
case when grouping("合同名称") = 1 then wmsys.wm_concat("合同名称")
else "合同名称"
end as "合同名称",
sum("最新造价") as "最新造价",
sum("累计付款") as "累计付款"
from t
group by rollup("工程项目", "合同名称");
工程项目 合同名称 最新造价 累计付款
------------ -------------------------------------------------------------------------------- ------------ ------------
大厦一期 测试合同1 100000 90000
大厦一期 测试合同2 5000 0
大厦二期 测试合同3 50000 45000
大厦一期 测试合同1,测试合同2 105000 90000
大厦二期 测试合同3 50000 45000
合计 测试合同1,测试合同2,测试合同3 155000 135000