• 主页
  • Oracle 基础和管理
  • Oracle 高级技术
  • Oracle 认证与考试
  • 职位交流

求一个简单的分组!!当费用聚合为空的时候,照样把费用为空的显示出来!!谢谢

iceflylee 深圳巨龙易达科技股份有限公司 研发经理  2005-03-18 09:58:36
费用1 费用2 费用3
人员1
人员2
人员3
...全文
47 点赞 收藏 9
写回复
9 条回复
yxxx 2005年03月18日
select person,
nvl(sum(decode(fee,'费用1',total)),0)费用1,
nvl(sum(decode(fee,'费用2',total)),0)费用2,
nvl(sum(decode(fee,'费用3',total)),0)费用3
from table
group by person;
回复 点赞
dybinchn 2005年03月18日
SELECT SUM(NVL(费用1,0)),SUM(NVL(费用2,0)),SUM(NVL(费用3,0))
FROM TBL
GROUP BY 人员
回复 点赞
iceflylee 2005年03月18日
不够
回复 点赞
iceflylee 2005年03月18日
人员,费用,合计。怎么分组完变成
费用1 费用2 费用3
人员1
人员2
人员3

回复 点赞
yxxx 2005年03月18日
nvl()够不够?
回复 点赞
zninger 2005年03月18日
只要判断就可以了
select case when 费用1 is null then 0 end 费用1,
case when 费用2 is null then 0 end 费用2,
case when 费用3 is null then 0 end 费用3
from 表名
回复 点赞
yxxx 2005年03月18日
能详细一点吗?
回复 点赞
zninger 2005年03月18日
只要判断就可以了
select case when 费用1 is null then 0 end 费用1,
case when 费用2 is null then 0 end 费用2,
case when 费用3 is null then 0 end 费用4,
from 表名
回复 点赞
iceflylee 2005年03月18日
一天内结贴
回复 点赞
发动态
发帖子
Oracle
创建于2007-09-28

6413

社区成员

5.4w+

社区内容

Oracle开发相关技术讨论
社区公告
暂无公告