herkese kolay gelsin.
benim malzemeleri listeleyen bir sql'lim var.
select id,malzeme_adi ,Miktar,Birimi ,sum(tutar) from Piyasa_Fiyat_Arastirmasi
where id=:id and firma_adi=:firma_adi order by sum(tutar)
yukarıda kod güzel çalıyor. ama başka bir sql ile firmaları toplam tutarlarına göre sıralattırıyorum. onun için malzemelerinde firmların toplam tutarlarına göre sıralatmam gerekiyor.
ben burada firma ismina gruplayıp toplam tutara göre order by çekip malzemeleri ona göre sıralatmak istiyorum.
yardımcı olursanız sevinirim.
iç içe select
Oncelikle hangi veritabanını kullandığınızı lutfen belirtin... Sonrasında da yazdığınız kodu code taglari içinde yazmanız kolay anlaşılmayı sağlar ki bu da cevap alma ihtimalinizi arttırır....
Şimdi bu kod gayet güzel çalışıyor diyorsunuz ama ya şu an bende b ir dalgınlık var da bir şey iatlıyorum ya da bu kodun şalışmaması lazım... Zira kodda group by goremedim.
Dolayısıyla tam problemi ve isteğinizi de anlayamadım açıkcası....
Kod: Tümünü seç
select id,malzeme_adi ,Miktar,Birimi ,sum(tutar)
from Piyasa_Fiyat_Arastirmasi
where id=:id and firma_adi=:firma_adi
order by sum(tutar)
Dolayısıyla tam problemi ve isteğinizi de anlayamadım açıkcası....
* http://www.fahrettin.org Manzara Fotoğraflarım... 
* http://delphiturkiye.gunduz.info Seminerler...
* http://www.hakmar.com.tr Kalite bir haktır...

* http://delphiturkiye.gunduz.info Seminerler...

* http://www.hakmar.com.tr Kalite bir haktır...

Kullandığım veri tabanı ms sql server..abi ben onu önceden denemeiştim. şimdide denedim aşağıdaki hatayı veriyor. galiba gruplama yapamam gerekiyor.
ben biraz tapldan bahsedeyim.tabloya kayıt girerken mesela üç firma 5 malzeme var. toplam database kayıt yaparken 15 kayıt ekliyor. ben bu sql ihtiyaç duymamın nedeni rapordan kaynaklı. rapor normal değil yani.
raporun şöyle olması gerekiyor. firmalar en düşük fiyat verenden en yükeseğe doğru sıralanıyor. malzemeler bir kere yazdırılıyor.
firma adı
adem firması-- fahrettin firması--- mustafa firması
malzeme birim fiyat- toplam fiyat
1adet kalem 1500 1500
1adet defer 1200 1200
1adet kağıt 1600 1600
toplam fiyat = 4300
şeklinde olacak. malzemeleride firma toplam fiyatına göre sıralattırabilirsem galiba sorun bitecek
---------------------------
Debugger Exception Notification
---------------------------
Project Ihale.exe raised exception class EOleException with message 'Column 'Piyasa_Fiyat_Arastirmasi.id' is invalid in the select list because it is not contained in an aggregate function and there is no GROUP BY clause'. Process stopped. Use Step or Run to continue.
---------------------------
OK Help
---------------------------
kolay gelsin
ben biraz tapldan bahsedeyim.tabloya kayıt girerken mesela üç firma 5 malzeme var. toplam database kayıt yaparken 15 kayıt ekliyor. ben bu sql ihtiyaç duymamın nedeni rapordan kaynaklı. rapor normal değil yani.
raporun şöyle olması gerekiyor. firmalar en düşük fiyat verenden en yükeseğe doğru sıralanıyor. malzemeler bir kere yazdırılıyor.
firma adı
adem firması-- fahrettin firması--- mustafa firması
malzeme birim fiyat- toplam fiyat
1adet kalem 1500 1500
1adet defer 1200 1200
1adet kağıt 1600 1600
toplam fiyat = 4300
şeklinde olacak. malzemeleride firma toplam fiyatına göre sıralattırabilirsem galiba sorun bitecek
---------------------------
Debugger Exception Notification
---------------------------
Project Ihale.exe raised exception class EOleException with message 'Column 'Piyasa_Fiyat_Arastirmasi.id' is invalid in the select list because it is not contained in an aggregate function and there is no GROUP BY clause'. Process stopped. Use Step or Run to continue.
---------------------------
OK Help
---------------------------
kolay gelsin
- sadettinpolat
- Moderator
- Mesajlar: 2131
- Kayıt: 07 Ara 2003 02:51
- Konum: Ankara
- İletişim:
id alanı benzersiz olduğu için grup by yer alması mantıksız olur.ademcicek yazdı:---------------------------
Debugger Exception Notification
---------------------------
Project Ihale.exe raised exception class EOleException with message 'Column 'Piyasa_Fiyat_Arastirmasi.id' is invalid in the select list because it is not contained in an aggregate function and there is no GROUP BY clause'. Process stopped. Use Step or Run to continue.
---------------------------
OK Help
---------------------------
kolay gelsin
Piyasa_Fiyat_Arastirmasi.id alanını sorgu sonuçlarına dahil etmeden group by ifadesini çalıştırmayı deneyin.