select a.trade_date,a.batch_no,
(select org from tabname b where a.trade_date = b.trade_date and a.batch_no = b.batch_no and flat = 'D' and org='借机构1' -- 最后一个org的条件有点奇怪,但是这儿肯定需要一个条件的) 借机构1,
(select org from tabname b where a.trade_date = b.trade_date and a.batch_no = b.batch_no and flat = 'D' and org='借机构2' -- 最后一个org的条件有点奇怪) 借机构2,
(select org from tabname b where a.trade_date = b.trade_date and a.batch_no = b.batch_no and flat = 'D' and org='贷机构1' -- 最后一个org的条件有点奇怪) 贷机构1,
(select org from tabname b where a.trade_date = b.trade_date and a.batch_no = b.batch_no and flat = 'D' and org='贷机构2‘ -- 最后一个org的条件有点奇怪) 贷机构2
(
select distinct trade_date,batch_no
from tabname
) a
追问你的条件不对。
是按flag分是什么机构的,flag =d 是借,=c 是贷
TRADE_DATE ,BATCH_NO, D_ORA1 D_ORA2 C_ORA1 C_ORA2
19900901 1 机构a 机构b 机构c 机构d
追答select a.trade_date,a.batch_no,
(select org from tabname b where a.trade_date = b.trade_date and a.batch_no = b.batch_no and flat = 'D' and org='借机构1' -- 最后一个org的条件有点奇怪,但是这儿肯定需要一个条件的) 借机构1,
(select org from tabname b where a.trade_date = b.trade_date and a.batch_no = b.batch_no and flat = 'D' and org='借机构2' -- 最后一个org的条件有点奇怪) 借机构2,
(select org from tabname b where a.trade_date = b.trade_date and a.batch_no = b.batch_no and flat = 'C' and org='贷机构1' -- 最后一个org的条件有点奇怪) 贷机构1,
(select org from tabname b where a.trade_date = b.trade_date and a.batch_no = b.batch_no and flat = 'C' and org='贷机构2‘ -- 最后一个org的条件有点奇怪) 贷机构2
(
select distinct trade_date,batch_no
from tabname
) a
追问ORA-01427:单行子查询返回多个行
追答这个要看你数据到底是怎样的,要获取怎样的数据。