• 04-04-2007, 18:40:42
    #1
    Kurumsal PLUS
    bir tablom var, şu şekilde:

    id | urunadi | yorum

    1 | urun1 | 1
    2 | urun2 | 2
    3 | urun3 | 1


    yapmak istediğim şey;

    yorum alanındaki sayılara bakarak, en çok hangisi varsa onu listelemek. atıyorum, eklenen ürünlerin yorum alanındaki sayılarda en çok 1 sayısı var. bana en çok hangi sayıdan olduğunu ve bu sayının kaç tane olduğunu gösterecek.

    örneğin, verdiğim örnek tabloda en çok 1 sayısı, 2 kez kullanılmış. bu şekilde yazmasını nasıl sağlayabilirim?
  • 04-04-2007, 18:53:10
    #2
    Üyeliği durduruldu
    yorum sutununu, (Desc) diye sıralar en büyüğünü bulursun.

    toplamlarını da, buldugun en buyuk sayıdan sorgulayarak bundan olanları say
    (num rows) diye bulabilirsin.

    iyi çalışmalar.
  • 04-04-2007, 19:17:01
    #3
    Üyeliği durduruldu
    Bartuc adlı üyeden alıntı: mesajı görüntüle
    bir tablom var, şu şekilde:
    id | urunadi | yorum
    1 | urun1 | 1
    2 | urun2 | 2
    3 | urun3 | 1
    yapmak istediğim şey;
    yorum alanındaki sayılara bakarak, en çok hangisi varsa onu listelemek. atıyorum, eklenen ürünlerin yorum alanındaki sayılarda en çok 1 sayısı var. bana en çok hangi sayıdan olduğunu ve bu sayının kaç tane olduğunu gösterecek.
    örneğin, verdiğim örnek tabloda en çok 1 sayısı, 2 kez kullanılmış. bu şekilde yazmasını nasıl sağlayabilirim?
    SQL de Group by ile yapabilirsin:
    Alıntı
    SELECT yorum, count(*) kez FROM tablo GROUP by yorum HAVING count(*) >= 0 ORDER BY kez desc
    Sadece en cok yorum yapilani gormek icin:

    Alıntı
    SELECT yorum, count(*) kez FROM tablo GROUP by yorum HAVING count(*) >= 0 ORDER BY kez desc LIMIT 1
  • 04-04-2007, 21:05:19
    #4
    Kurumsal PLUS
    biraz daha açabilir misin?

    yorum = 1 olanların sayısını göstermek istiyorum.
  • 04-04-2007, 22:53:01
    #5
    Üyeliği durduruldu
    where yorum ='1' dersin o zaman sorgunun icine.
  • 05-04-2007, 12:30:02
    #6
    Kurumsal PLUS
    anlatmak istediğim anlaşılmadı galiba, 1'i örnek gösterdim ben.

    listeleme yapmak istiyorum. büyük bir tablom var. yorum değeri en çok kaçsa, o 1. sırada olacak ve sayısını gösterecek.

    en çok 1 varsa, 1. sırada 1 olacak ve kaç tane olduğunu yazacak.
    en çok 2 varsa, 1. sırada 2 olacak ve kaç tane olduğunu yazacak.
  • 05-04-2007, 23:57:53
    #7
     
    SELECT count( yorum ) AS sayi, urunid, yorum
    FROM urun
    GROUP BY yorum
    order by sayi desc
  • 06-04-2007, 01:40:09
    #8
    Kurumsal PLUS
    teşekkür ederim