所以我目前正在开发一个包含贷款申请的网站,在该贷款申请中有一个主要的借款人,然后最多可以有2个共同借款人。我所做的是创建一个loanSubmission
表,其中包含uid1
,uid2
和uid3
列,代表user id
,然后是用户编号。用户的id
存储在这些列的每一列中,用户完整信息存储在users
表中。
我需要从另一个表中的数据中选择三个用户。有没有办法使用连接实现这一点,还是我必须使用子查询?我从来没有根据另一张桌子的信息加入多个用户,所以任何方向都会非常感谢!
答案 0 :(得分:2)
这非常简单,您使用别名多次连接到同一个表:
SELECT user1.id, user2.id, user3.id FROM loanSubmission
INNER JOIN users user1 ON user1.id = loanSubmission.uid1
INNER JOIN users user2 ON user2.id = loanSubmission.uid2
INNER JOIN users user3 ON user3.id = loanSubmission.uid3
或取决于您是否想要空白用户(您可能会这样做)
SELECT user1.id, user2.id, user3.id FROM loanSubmission
LEFT OUTER JOIN users user1 ON user1.id = loanSubmission.uid1
LEFT OUTER JOIN users user2 ON user2.id = loanSubmission.uid2
LEFT OUTER JOIN users user3 ON user3.id = loanSubmission.uid3