ios - PHP/MySQL : Obtain two items from table in join using different criteria

标签 ios mysql sql

我正在表之间进行联接,以从用户表中获取有关对文章发表评论的人的用户图片。但是,我需要从用户表中获取不同用户(即同时撰写文章的人)的单独图片。 (有充分的理由在一个查询中执行此操作,因为它实际上只是更复杂请求的一部分)。

任何人都可以建议我如何在加入期间从用户表中获取两张用户图片?此代码为我提供了第一张用户图片、评论者的图片或 upic。但我如何才能获得第二张用户图片呢?

commments
id|comment|articleid|userid
1|great article|1|2

article
id|article|userid
1|Restaurant Openings|1

users
id|pic
1|mary.png
2|joe.png

$sql = "SELECT c.comment,c.articleid,c.userid,u.id, u.pic as upic,a.id,    
FROM `comments` c 
LEFT JOIN `articles` a 
ON c.articleid = a.id 
LEFT JOIN `users` u
ON c.userid= u.id 
WHERE c.id=1";

获取作者照片的单独查询是:

$sqlauthorpic = "SELECT u.pic,u.id from `users` u
WHERE u.id = 1";

感谢您的任何建议。

最佳答案

这次使用 article 表再次加入 users,因为您正在寻找撰写文章的用户:

SELECT c.comment,c.articleid,c.userid,u.id, u.pic as upic,a.id, w.pic as wpic    
FROM `comments` c 
LEFT JOIN `articles` a ON c.articleid = a.id
LEFT JOIN `users` u ON c.userid= u.id
JOIN `users` w ON w.id = a.userid

您也可以去掉 LEFT 连接,因为我认为没有文章 (articleid) 就没有评论,没有用户 id 就没有评论。

关于ios - PHP/MySQL : Obtain two items from table in join using different criteria,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48552640/

相关文章:

ios - 实现 UIScrollView 时遇到问题

ios - NSFileWrapper 在来自 iCloud 时失败并在本地目录中工作

sql - SQL Developer“与连接图的其余部分断开连接”

mysql - 同一表中条件的嵌套计数

ios - 应用内电子邮件将发送电子邮件但不会在 Xcode 中关闭

iphone - 通过 UIPasteBoard 在短信中粘贴图像

php - MySQL中如何连接两个表

mysql - SQL如何执行limit和offset?

mysql - 如何使用 mule 调用 MySQL 存储过程 3.4.2。我是 Mule 新手,项目团队正在使用 3.4.2 版本

mysql - 未知列 where 子句