小编geN*_*AZt的帖子

MySQL加入后限制LEFT JOIN子查询

目前我有这个查询:

SELECT post.id AS postID, sCom.id as CommentID FROM `post` LEFT JOIN (SELECT * FROM `comment` LIMIT 5) AS sCom ON sCom.post_id = post.id;
Run Code Online (Sandbox Code Playgroud)

输出:

postID | CommentID
1      | 1
2      | null
3      | null
4      | 2
5      | 3
5      | 4
5      | 5
Run Code Online (Sandbox Code Playgroud)

它可以工作,但它在JOINing之前限制注释表.结果是,它选择前5个注释并映射它.ID为5的所有注释都将被忽略.

如何重写查询以选择最多5条评论的帖子?

当前表结构:

发布:

CREATE TABLE IF NOT EXISTS `post` (
 `id` int(11) NOT NULL AUTO_INCREMENT,
 `feed_id` int(11) DEFAULT NULL,
 `user_id` int(11) DEFAULT NULL,
 `origin_id` int(11) DEFAULT NULL,
 `content` longtext COLLATE …

mysql join subquery limit

5
推荐指数
1
解决办法
4466
查看次数

标签 统计

join ×1

limit ×1

mysql ×1

subquery ×1