Mysql LEFT JOIN:限制父表

时间:2013-03-06 08:26:32

标签: php mysql sql join

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

SELECT posts.text, comments.text 
FROM posts 
LEFT JOIN comments ON comments.postid= post.id 
Limit 0,5 

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


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

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

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

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

1 个答案:

答案 0 :(得分: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;