在開發環境中遇到這樣關於資料庫的問題
有三個不同的查詢語句
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
現在拿出來供大家交流一下,如果還有其它好的辦法,希望各位能拿出來分享~