2010-06-13 4 views
-1

J'ai besoin de trouver une fonction. le scénario est: J'ai 2 table. 1. tableau de nouvelles 2. news_comment tableTrouver les 20 nouvelles les plus commentées

besoin de trouver les nouvelles les plus commentés. la table news_comment a la relation avec la table de nouvelles

Merci

Répondre

1

essayez la requête donner. ça peut aider.

Top 20 donner les premiers 20, rejoindre lin 2 tables count (news_comment.id) donnent pas de commentaire

select top 20 news.*, count(news_comment.id) as no_of_comment from news inner join news_comment on news.id = news_comment.newsid order by no_of_comment desc 
+0

mais j'ai besoin sql au format MySql, la montrant erreur de syntaxe – Santanu

+0

Peut-être un GROUP BY nécessaire. Avec quel moteur de base de données travaillez-vous? Juste adapter la requête donnée. –

+1

pour mysql: sélectionnez a.id, a.title, count (b.id) no_of_comment de news une jointure interne news_comment b sur a.id = b.news_id groupe par a.id, a.title commande par no_of_comment limit 0, 20 – KoolKabin

Questions connexes