我正在尝试从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指定为选择列,但是现在所有列都会返回,因为“*”包含在子查询中?
答案 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;