读书人

oracle 一张两条数据合龙为一条数据

发布时间: 2013-09-06 10:17:17 作者: rapoo

oracle 一张两条数据合并为一条数据
本帖最后由 liuzoe 于 2013-08-29 16:49:50 编辑 a b c d
1 4027 住宅 1931.32 19
2 4027 非住宅 5300.00 30

需求是这样显示:总套数,总面积,住宅总套数,住宅总面积,非住宅总套数,非住宅总面积
49 7231.32 19 1931.32 30 5300.00
条件是a=4027
这个应该怎么写呢?
[解决办法]
select sum(d),sum(c),
sum(decode(b,'住宅',d,0)),
sum(decode(b,'住宅',c,0)),
sum(decode(b,'非住宅',d,0)),
sum(decode(b,'非住宅',c,0)) from table where a=4027 group by a
[解决办法]


SELECT SUM(D),
SUM(C),
SUM(DECODE(B, '住宅', D, 0)),
SUM(DECODE(B, '住宅', C, 0)),
SUM(DECODE(B, '非住宅', D, 0)),
SUM(DECODE(B, '非住宅', D, 0))
FROM TABLE
WHERE A = 4027

[解决办法]
引用:

SELECT SUM(D),
SUM(C),
SUM(DECODE(B, '住宅', D, 0)),
SUM(DECODE(B, '住宅', C, 0)),


SUM(DECODE(B, '非住宅', D, 0)),
SUM(DECODE(B, '非住宅', C, 0))
FROM TABLE
WHERE A = 4027

改了下

读书人网 >oracle

热点推荐