现在有4个表 a,b,c( 大数据表 10+亿左右)
            d 表(相对而言小很多 几万。)
select count(cloumn) as 1 ,d.id from a,d
where a.id =d.id(+)  ;
select count(cloumn) as 2 ,d.id from a,d
where b.id =d.id(+)  ;
select count(cloumn) as 3 ,d.id from a,d
where b.id =d.id(+)  ;
 
上面都是有procedure返回 结果集.
现在想展示d.id ,1,2,3 
有两种方案:
1.用java分别截取每个列的数据,进行拼凑。
2.用数据库 
select id ,1,2,3 from 
select count(cloumn) as 1 ,d.id from a,d
where a.id =d.id(+) a ,
select count(cloumn) as 2 ,d.id from a,d
where b.id =d.id(+) b, 
select count(cloumn) as 3 ,d.id from a,d
where b.id =d.id(+)  c 
where a.id = b.id and 
      a.id = c.id 请问这两个方案谁的效率高一点。