在开发环境中遇到这样关于数据库的问题
有三个不同的查询语句
1:
select year_mon,sum(gasmon)
from a
where id='HBsRf0t6UI'
and class=11
group by year_mon
2:
select year_mon,sum(wellgasmon)
from b
where id='HBsRf0t6UI'
and class=11
group by year_mon
3:
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
现在拿出来供大家交流一下,如果还有其它好的办法,希望各位能拿出来分享~