select ad,sum(tutar) as toplam from yer
join mus on mus.yerid=yer.id
join musisl on musisl.musid_=mus.id
where tipid=1
group by ad
order by toplam desc
Bu sorgudan
yer1 30000
yer2 17000
yer3 14000
gibi bir sonuç alıyorum. tipid=2 yapınca da
yer1 10000
yer2 8000
yer3 5000
sonuçlarını alıyorum.
yer1 30000 10000
yer2 17000 8000
yer3 14000 5000
şeklinde birleşik sonuç almam için sorguyu nasıl yapmalıyım.
select ad,sum(tutar) as toplam from yer
join mus on mus.yerid=yer.id
join musisl on musisl.musid_=mus.id
where tipid=1 And tipid=2
group by ad
order by toplam desc
select ad, sum(tip1_tutar) as tip1_tutar, sum(tip2_tutar) as tip2_tutar
from (
select ad,sum(tutar) as tip1_tutar, 0 AS tip2_tutar
from yer
join mus on mus.yerid=yer.id
join musisl on musisl.musid_=mus.id
where tipid=1
group by ad
UNION ALL
select ad, 0 AS tip1_tutar, sum(tutar) AS tip2_tutar
from yer
join mus on mus.yerid=yer.id
join musisl on musisl.musid_=mus.id
where tipid=2
group by ad
)
group by ad
order by tip1_tutar desc
Bugün bir kez daha,
Hiç Birşey Bilmediğimi Öğrendim!!!