我有3个表:WAS
,USER
和连接表WAS_USER
。我想要实现的是获取表WAS
中的所有行,如果有多个用户使用同一个WAS
,我希望每个行都有一行。
例如:
WAS:
id | name
1 | 'was1'
2 | 'was2'
USER:
id | name
1 | 'user1'
2 | 'user2'
WAS_USER:
userId | wasId
1 | 1
2 | 1
所以在排队之后我需要得到这个:
wasrId | userId | wasName | userName
1 | 1 | 'was1' | 'user1'
1 | 2 | 'was1' | 'user2'
1 | 2 | 'was1' | 'user2'
3个表之间的普通连接将只提供WAS
中的我的行,我需要的是3个表上的某种left join
。
答案 0 :(得分:0)
好的,这对我有用:
SELECT *
FROM
(SELECT * FROM WAS W LEFT JOIN WAS_USER WU ON W.id=WU.wasID) TMP LEFT JOIN USER U ON TMP.userId=U.userId
虽然不知道效率......