我们有 2 个表:文章
、评论
。
该表的结构:
articles(article_id(PK), etc);
comments(comment_id(PK), article_id(FK)).
我需要获取评论最多的文章的列表。 我使用了请求:
SELECT articles.article_id, COUNT(comments.article_id)
FROM comments
INNER JOIN articles ON comments.article_id = articles.article_id AND comments.article_id = :article_id.
获取包含 3 篇评论最多的文章的数据数组的请求应该是什么? 真的可以用 SQL 做到这一点吗?
最佳答案
您应该能够通过此查询获得您想要的内容:
SELECT articles.article_id, COUNT(comments.article_id) AS num_comments
FROM comments
INNER JOIN articles ON comments.article_id = articles.article_id
GROUP BY articles.article_id
ORDER BY num_comments DESC
LIMIT 3
关于php - 如何使用SQL获取评论最多的文章?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52048151/