Oracle 多个查询语句结果合并
有三个不同的查询语句 1:
select year_mon,sum(gasmon) from a where id="HBsRf0t6UI" and class=11 group by year_mon2:
select year_mon,sum(wellgasmon) from b where id="HBsRf0t6UI" and class=11 group by year_mon3:
select year_mon,sum(gasprodmon) from c where id="HBsRf0t6UI" and class=11 group by year_mon希望能显示出下面的效果:
year_mon sum(gasmon) sum(wellgasmon) sum(gasprodmon) 200702 122 222 123 200703 333 234 342 200704 0 2334 0 200705 324 2342 234这样的效果也行。 问题解决
SELECT year_mon, SUM (gasmon), SUM (wellgasmon), SUM (gasprodmon) FROM (SELECT year_mon, SUM (gasmon) gasmon, 0 wellgasmon, 0 gasprodmon FROM a WHERE ID = "HBsRf0t6UI" AND CLASS = 11 GROUP BY year_mon UNION ALL SELECT year_mon, 0, SUM (wellgasmon), 0 FROM b WHERE ID = "HBsRf0t6UI" AND CLASS = 11 GROUP BY year_mon UNION ALL SELECT year_mon, 0, 0, SUM (gasprodmon) FROM c WHERE ID = "HBsRf0t6UI" AND CLASS = 11 GROUP BY year_mon) GROUP BY year_mon
真实应用
SELECT bbb 月份, SUM (aaa), SUM (ccc) FROM ( SELECT TO_CHAR (b.CREATE_TIME, "yyyy-mm") bbb, COUNT (b. ID) aaa, 0 ccc FROM xxx.ORDER_ b WHERE b.PAY_AMOUNT IS NULL GROUP BY TO_CHAR (b.CREATE_TIME, "yyyy-mm") UNION ALL SELECT TO_CHAR (c.CREATE_TIME, "yyyy-mm"), 0, COUNT (c. ID) ccc FROM xxx.ORDER_ c <span style="font-family: Arial, Helvetica, sans-serif;">WHERE</span>
c.state = - 1 GROUP BY TO_CHAR (c.CREATE_TIME, "yyyy-mm") ) GROUP BY bbb ORDER BY bbb;
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。