在sql中 能不能把从同一张表中,根据不同的条件,查询出的一个字段的不同的值 分成几个列显示出来?

select a.A, b.B, c .C, c.D || '-' || c.E, c.F,a.G from d

left outer join a
on a.H = d.H
left outer join b
on a.I = b.J
left outer c
on c.A = a.A
where nvl(a.dr, 0) = 0
and d.costbelongmonth = '2015-02'
and d.N <= '2014-12-31'
and d.N >= '2014-12-01'
要的就是 d.costbelongmonth = '2015-02' 这个条件的改变
a.G 分为不同的列显示出来

第1个回答  2014-12-04
用一表拆多表,举例:select a1.c,a2.c from a a1,a a2
第2个回答  2014-12-03
可以的,你可以把表结构和需要的结果贴出来么?追问

发到问题补充里面了

追答

查询 每次 只传一个costbelongmonth参数?你是如何根据不同的条件接结果集 放置缓存?

追问

我想的是 先用union 再用pivot 把行转成列 可不可以?

追答

应该可以的,动起手来吧!

相似回答