| naile | 08.12.2004 - 12:18:09 |
| Şu yapıda bir tablom var:
Firma Ürün Tutar1 Tutar2 Tutar3 ...
A 1 1 3 0 A 2 4 2 5 B 1 6 5 5 B 2 4 2 4 B 3 5 5 5 tutar1,tutar2... her aya göre o üründen alınan tutarları veriyor, yani tutar1 1. ay tutar2 2. ay.. Burda şöyle bir cümle kullanıyorum: Select Firma,Sum(tutar1),Sum(tutar2),sum(tutar3)
From tablo Group by Firma Burda her firmanın her aya ait toplam tutarlarını tek satırda görebiliyorum yani: Firma Tutar1 Tutar2 Tutar3 ...
A 5 5 5 B 15 12 14 Yapmak istediğim ise şöyle: Bu iki firmayı birleştirmek istersem mesela bir alan daha olacak ve o alanda birleştiği firmayı yazacak ve sadece tek satır olacak A firması görülecek ama tutar olarak A ile B nin toplamını alacak. Firma Tutar1 Tutar2 Tutar3 ...
A 20 17 19 Bunu iç select kullanarak yapabilirim ama bu bana yavaşlık verir gibi geldi. Select (select firma ..)
sum(tutar1),.. From Tablo bir şekilde gruplama yapmam lazım neye göre gruplandıracağım? Velhasıl çözemedim bu işi. Bir firki olan var mı? :) | |
| Anonymous | 08.12.2004 - 13:03:30 |
SELECT SUM(TUTAR1) AS OCAK, SUM(TUTAR2) AS SUBAT FROM TABLO WHERE FIRMA = 'A' OR FIRMA = 'B'
yani gruplama yapmadan where ile çözülebilir iş. kolay gelsin. | |
| naile | 08.12.2004 - 13:05:44 |
| Ama firmanın adı ve diğer bilgilerini de görmek istiyorum | |
| Anonymous | 08.12.2004 - 13:11:42 |
| şimdi A ve B firmaları na ait toplamları göreceksiniz. ama firama adını görmek istiyorum derken A firmasının adını mı görmek istiyorsunuz yoksa B firmasının adını mı ? | |
| mikser | 08.12.2004 - 13:13:22 |
| hangi firma hangi firmayla birleşmiş nerden bilinecek?
örnekde ki, Firma Tutar1 Tutar2 Tutar3 ... A 20 17 19 neye göre A, neden B degil? şu sekilde istediginiz gibi olur fakat. B olması gerektiginde yine A yazar. SELECT ' A' as Firma, SUM(TUTAR1) , SUM(TUTAR2), SUM(TUTAR3) FROM Tablo | |
| naile | 08.12.2004 - 13:23:38 |
| İşte onun için bir alanım daha olacak. A nın olduğu satıda B yazdığı zaman B yi hiç görmeyecek B'nin toplamını A'ya dahil edecek yok eğer null sa yapacak bişey yok :) | |
| Anonymous | 08.12.2004 - 13:53:30 |
| biraz karıştı ama.
SELECT MAX(FIRMA) AS FIRMA, SUM(TUTAR1) AS OCAK, SUM(TUTAR2) AS SUBAT FROM TABLO WHERE FIRMA = 'A' OR FIRMA = 'B'
max veya min ile size uygun olanı seçebilitsiniz sanırım. | |