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

  • GoldgenieOfficial

    GoldgenieOff

    23 Temmuz 2009
  • Maya Learning Channel

    Maya Learnin

    23 HAZİRAN 2010
  • SlimaksClass

    SlimaksClass

    15 Kasım 2010