php - Mysql左连接返回重复行

标签 php mysql

抱歉,如果我的问题有点愚蠢。但我是 mysql 数据库的新手。我有两个表,例如发布和评论。我正在尝试从表 Post 中获取帖子,并从表 Comment 中获取所有评论。到目前为止我尝试过的是。“SELECT post.*,comment.username, comment.comment FROM post LEFT JOIN comment ON post.id = comment.post_id ORDER BY post.id DESC LIMIT 10”;

现在的问题是:例如。如果帖子 1 上有 5 条评论。结果将是类似的结果。

帖子 1 -> 评论 1
帖子 1 -> 评论 2
发布 1-> 评论 3 等等。
当我试图得到类似的东西时

post1 -> 评论 1,评论 2,评论 3..

我不想在应用层为这个问题做点什么。 谢谢

最佳答案

你的结果是正确的,因为 JOIN 语句将两个表合并到一个记录集中(因为你有很多记录到 comment 表中,而 post 表中只有一个记录相关)。

如果你想获取单个帖子的所有评论,你需要执行一个专门的查询来获取相关主题的所有评论,例如:

SELECT * FROM comment WHERE post_id = YOUR_POST_ID LIMIT 10

干杯

关于php - Mysql左连接返回重复行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21780520/

相关文章:

mysql - 跨多个列计算唯一项目(颜色)

php - Codeigniter mysql 查询 AND_OR

php - mongodb写关注

php - 哪个 PHP 客户端库与 Cassandra 一起使用?

mysql - Access 查询: Like statement containing a today method

MySQL事务 - 事务期间读取

php - 使用 CodeIgniter 从 MySQL 数据库检索图像,而不使用上传库。是否可以?

javascript - 服务器上每秒更新 MYSQL 值

php - 如何将 PHP mysql_fetch_array() 转换为 NSMutableArray? PHP --> Xcode

php - MySQL INSERT - 字段名称是否需要反引号/重音分隔?