php - MySQL 左连接 : Limit parent table

标签 php mysql sql join

我正在尝试从数据库中获取结果,但将结果限制在右侧

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

如果有 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 指定为选择列,但现在所有列都将返回,因为子查询中包含“*”吗?

最佳答案

如果这是您想要的,请使用子查询仅获取 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;

关于php - MySQL 左连接 : Limit parent table,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15242310/

相关文章:

php - 如何处理 PHP 中的 <option> 值以便在数据库中可读

mysql - AWS Aurora MySQL 无服务器 : how to connect from MySQL Workbench

sql - 与 UNION SQL 查询相反

SQL Server,将 NTEXT 转换为 NVARCHAR(MAX)

Java 类文件格式超出限制 :

php - 使用 PHP 修改 json 不保存/更新

php - CakePHP webroot 和 tmp 文件夹被黑

php - MySQL单个查询计算多个日期范围内的行数

php - 为每个帖子选择反对票和赞成票 php mysql

php - MySQL 临时 View 可能吗?