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

  • My name is Festis and I'm free

    My name is F

    2 EKİM 2011
  • incognitotraveler

    incognitotra

    27 Mayıs 2010
  • Trevor Eckhart

    Trevor Eckha

    19 Aralık 2009