SORU
21 Mart 2012, ÇARŞAMBA


Mysql eğer durum sayısı sorgu

Yorumlar için haber ve diğeri için iki tablo var ve onaylanmış olarak ayarlanmış olan yorum sayısını almak istiyorum.

SELECT ccc_news . * , 
count(if(ccc_news_comments.id = 'approved', ccc_news_comments.id, 0)) AS comments
FROM ccc_news
LEFT JOIN ccc_news_comments ON ccc_news_comments.news_id = ccc_news.news_id
WHERE `ccc_news`.`category` = 'news_layer2'
AND `ccc_news`.`status` = 'Active'
GROUP BY ccc_news.news_id
ORDER BY ccc_news.set_order ASC
LIMIT 20 

Ama bu sorgu ile sorunu açıklama sütunu için getirilen minimum değer herhangi bir yorum bu haber ilgili mevcut olup olmadığını 1.

Herhangi bir yardım son derece kayda değer olacaktır.

CEVAP
21 Mart 2012, ÇARŞAMBA


count() sum() kullanın

Aşağıda deneyin:

SELECT ccc_news . * , 
SUM(if(ccc_news_comments.id = 'approved', 1, 0)) AS comments
FROM ccc_news
LEFT JOIN ccc_news_comments ON ccc_news_comments.news_id = ccc_news.news_id
WHERE `ccc_news`.`category` = 'news_layer2'
AND `ccc_news`.`status` = 'Active'
GROUP BY ccc_news.news_id
ORDER BY ccc_news.set_order ASC
LIMIT 20 

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • LiquidMusick

    LiquidMusick

    23 Aralık 2010
  • RinconDynamic

    RinconDynami

    1 EKİM 2011
  • sinumatic

    sinumatic

    19 Aralık 2006