Arkadaşlar merhaba , sql sorgulama takıldım istediğim en fazla hangi meyvadan gelmiş.
Örnek tablo;
1-elma-4 kg
2-armut -1 kg
3-armut -1 kg
4-ayva -3 kg
Sorgulamadan sonraki sonuç
1- elma - 4 kg.
2- ayva - 3 kg.
3- armut - 2 kg.
Yardımlarınız için şimdiden teşekkür ederim.
select * from table order by kilo desc;
tabi bilgiler ayrı alanlardaysa
Group by kullanmanız gerekiyor.
Select Adi,Sum(Kg) as Kg from [TableName] group by Adi order by Kg desc
Bu kod çalışsada lakin ki öyle değildir :) Yüce mevlam normalizasyon dediğimiz kavramı yaratmıştır.
Meyveler tablosu ayrı olmalı. Meyveler_Kilolar tablosu ayrı olmalı. Böylece group by işlemini ID üzerinden yaparak kat kat hız kazanmış oluruz.
grupby a ne gerek var
Örnek tabloda 2 tane armut var. Çıktıda 1 tane.
o biz orayı kaçırmışız,
hatta toplamada yapması gerek.
ve KG ile Meyve tabloları ayrı olursa iyi olur
yanıtlar için teşekkürler ama sıkıntı oluyor ,
- select * from table order by kilo desc;
yukarudaki gibi doğru bir sorgulama olmaz belki kg olarak 1 dir ama bir çok satırda tekrarlanabilir..
Select Adi,Sum(Kg) as Kg from [TableName] group by Adi order by Kg desc
yukarıdaki tamam diyelim 10 satırda elma var 1 kg ama tek satırda armut 20 kg. yine doğru sonuç çıkmaz
Neden doğru çıkmasın? Buraya örnek tabloyu ve sonucu yaz birlikte bakalım.
Hocam pazartesi günü göndereceğim. Uğraşı için teşekkürler.
Alıntı yapılan: barisertekin - 19 Nisan 2014, 17:06:43
Group by kullanmanız gerekiyor.
Select Adi,Sum(Kg) as Kg from [TableName] group by Adi order by Kg desc
Bu kod çalışsada lakin ki öyle değildir :) Yüce mevlam normalizasyon dediğimiz kavramı yaratmıştır.
Meyveler tablosu ayrı olmalı. Meyveler_Kilolar tablosu ayrı olmalı. Böylece group by işlemini ID üzerinden yaparak kat kat hız kazanmış oluruz.
Eyvallah yukarıdaki çalıştı. Yanıt veren herkese teşekkür ederim...