我有两张 table
1. Table A
userId
userFirstName
UserLastName
2. Table B
createdByUserId
updatedByUserId
deletedByUserId
tableName
tableCreateDate
我想对表B(包括createByUserID、updatedByUserId和deletedByUserId)进行选择,并在一个查询中获取表A的userFirstName和userLastName(userName根据已获取的userID)?这在一个嵌套查询中可能吗?或者它确实需要两个查询,一个查询取出 userId,第二个查询取出 userdetail。
最佳答案
如果我明白你想要什么,你可以加入三次。 (我选择左连接以防某些 ID 为空)
Select
b.tableName,
b.tableCreateDate,
CUser.userFirstName CreateUserFirstName,
CUser.UserLastName CreateUserLastName ,
CUser.userFirstName UpdateUserFirstName,
UUser.UserLastName UpdateUserLastName ,
UUser.userFirstName DeleteUserFirstName,
DUser.UserLastName DeleteUserLastName
FROM
TableB b
LEFT JOIN TableA CUser
ON b.createdByUserId = CUser.UserId
LEFT JOIN TableA UUser
ON b.updatedByUserId= UUser.UserId
LEFT JOIN TableA DUser
ON b.updatedByUserId= DUser.UserId
关于mysql - 关于嵌套select的sql问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10458318/