• 12-05-2009, 18:42:23
    #1
    Aşağıdaki kodlarla mysqlde her ekip e atanmış işleri saydırıyorum. Yalnız 5 sorgu değilde tek sorgu ile bunu nasıl sağlayabilirim acaba ?

    Alıntı
    //Sayıcı
    $sorgu1 = mysql_query("SELECT COUNT(*) FROM isler WHERE ekip=1");
    $ekip1_is = mysql_result($sorgu1,0);

    $sorgu2 = mysql_query("SELECT COUNT(*) FROM isler WHERE ekip=2");
    $ekip2_is = mysql_result($sorgu2,0);

    $sorgu3 = mysql_query("SELECT COUNT(*) FROM isler WHERE ekip=3");
    $ekip3_is = mysql_result($sorgu3,0);

    $sorgu4 = mysql_query("SELECT COUNT(*) FROM isler WHERE ekip=4");
    $ekip4_is = mysql_result($sorgu4,0);

    $sorgu5 = mysql_query("SELECT COUNT(*) FROM isler WHERE ekip=5");
    $ekip5_is = mysql_result($sorgu5,0);
  • 12-05-2009, 19:05:46
    #2
    5 farklı işlemi tek seferde mi yapmaya çalışıyorsunuz,
    yoksa toplamlarını filan mı alacaksınız ?
  • 12-05-2009, 19:23:08
    #3
    uysal_rockci adlı üyeden alıntı: mesajı görüntüle
    5 farklı işlemi tek seferde mi yapmaya çalışıyorsunuz,
    yoksa toplamlarını filan mı alacaksınız ?
    tek mysql_query kullanmak istiyorum.

    Sonuça almak istediğim veri ; ekip sütunu 1 olan satır sayısı, ekip sütunu 2 olan kayıt sayısı ...
  • 12-05-2009, 19:27:54
    #4
    mow
    Üyeliği durduruldu
    SELECT COUNT(*) FROM isler GROUP BY ekip
  • 12-05-2009, 19:35:40
    #5
    Üyeliği durduruldu
    uygulanması gereken hali;
    [PHP]
    SELECT COUNT(*) FROM isler group by ekip
    [PHP]

    fantazik hali;
    (SELECT COUNT(*) FROM isler WHERE ekip=1)
    
    union all
    
    (SELECT COUNT(*) FROM isler WHERE ekip=2)
    
    union all
    
    (SELECT COUNT(*) FROM isler WHERE ekip=3)
    
    union all
    (SELECT COUNT(*) FROM isler WHERE ekip=4)
    
    union all
    
    (SELECT COUNT(*) FROM isler WHERE ekip=5)
    bu arada konuyu database bölümüne açsanız daha uygun olurmuş sanki
  • 12-05-2009, 20:13:55
    #6
    mow adlı üyeden alıntı: mesajı görüntüle
    SELECT COUNT(*) FROM isler GROUP BY ekip
    Gruplara göre saydırdım ama ben hangi grupta kaç tane kayıt var nasıl yazdırıcam php de ?

    Yani

    ekip1 iş sayısı : 15
    ekip 2 iş sayısı :8
    ...

    (sql imde ekip sütununda ekibi tanımlayan 1,2,3,4,5 gibi değerler bulunuyor.)

    Acemilikten kurtulmaya çalışıyorum kusuruma bakmayın
  • 12-05-2009, 20:18:21
    #7
    Kimlik doğrulama veya yönetimden onay bekliyor.
    SELECT COUNT(*) FROM isler GROUP BY ekip

    değil

    SELECT COUNT(id) FROM isler GROUP BY ekip

    diye kullan mysql load yükselmesini engellemiş olursun
  • 12-05-2009, 20:53:53
    #8
    Üyeliği durduruldu
    donanimmerkezi.com adlı üyeden alıntı: mesajı görüntüle
    Gruplara göre saydırdım ama ben hangi grupta kaç tane kayıt var nasıl yazdırıcam php de ?
    Yani
    ekip1 iş sayısı : 15
    ekip 2 iş sayısı :8
    ...
    (sql imde ekip sütununda ekibi tanımlayan 1,2,3,4,5 gibi değerler bulunuyor.)
    Acemilikten kurtulmaya çalışıyorum kusuruma bakmayın
    zaten count ile almis oluyorsunuz ? soruyu ben anlamadim şahsen
  • 12-05-2009, 22:39:01
    #9
    Hangi grupta kaç kayıt var bunu ayrı ayrı yazdırmayı başaramamıştım aşağıdaki şekilde halletttim. (ayrıca ek bi koşul ekledim bu ayrı bi konu) Yardımlarınız için teşekkür ederim.
    //Sayıcı
    $sorgu1 = mysql_query("SELECT ekip, COUNT(id) FROM isler WHERE durum=1 group by ekip");
    while($row = mysql_fetch_array($sorgu1)){
    	echo "Ekip". $row['ekip'] ." (".$row['COUNT(id)'].")" ;
    	echo " | ";
    }
    ?>
    Bu arada küçük bi sorun daha var Çıktı aşağıdaki şekilde oluşuyor. Sonuç 0 olanlar görüntülenmiyor. Ekip3 (0) olsun mesela... Bu nasıl olur ki
    Ekip (85) | Ekip0 (1) | Ekip1 (4) | Ekip5 (2) |