php - 如何使用SQL获取评论最多的文章?

标签 php mysql sql database

我们有 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/

相关文章:

php - 获取 protected 对象中的字符串

php - 更新 MySQL 数据库最后插入的 ID

sql - 查询主键真的值得吗?

mysql - 在 Snow Leopard 上启动 MySQL 错误

mysql - 按累积分组计算不同项目的计数

mysql - 在 Mysql 上连接 100GB 表

javascript - 防止表单提交后重置多个同名复选框

php - 无法让简单(无加密)php忘记密码表单工作

php - mysql查询左连接的两个表-得到错误的结果

php - 上传图片到mysql数据库失败