Mysql LEFT JOIN:限制父表

use*_*317 3 php mysql sql join

我正在尝试从DB获取结果,但将结果限制在右侧

SELECT posts.text, comments.text 
FROM posts 
LEFT JOIN comments ON comments.postid= post.id 
Limit 0,5 
Run Code Online (Sandbox Code Playgroud)

如果有五条评论,上述内容将返回第一篇文章的5条评论.但是我想返回所有评论,但在5个帖子后停止查询.我该怎么做?


对不起我的问题在开始时有点不清楚,因为我写了LEFT JOIN错误..

这是我的问题的解决方案:

SELECT posts.text, comments.text 
FROM ( SELECT * FROM posts Limit 0,5 ) 
LEFT JOIN comments ON comments.postid= post.id 
Run Code Online (Sandbox Code Playgroud)

另一个问题.我只将posts.text指定为选择列,但是现在所有列都会返回,因为"*"包含在子查询中?

Joh*_*Woo 6

如果这是你想要的,使用子查询只能获得5个父母.

SELECT  p.text PostText,
        c.text CommentText
FROM
        (
            SELECT  id, text
            FROM    posts
            LIMIT   5
        ) p
        LEFT JOIN comments c
            ON c.postId  = p.id;
Run Code Online (Sandbox Code Playgroud)