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

  • FD2097

    FD2097

    21 HAZİRAN 2009
  • guillaume2111's channel

    guillaume211

    19 Kasım 2006
  • ICON

    ICON

    19 EKİM 2011