我有两张桌子:
Table Users
UserId Name
1 John
2 Alice
3 Tom
4 Charles
Run Code Online (Sandbox Code Playgroud)
和
Table Clients
Id Name1 Name2 Name3
1 1 3 4
2 2 1 3
Run Code Online (Sandbox Code Playgroud)
我想在哪里做一个SQL查询
Clients.Id = 1
Run Code Online (Sandbox Code Playgroud)
结果如下:
Id Name1 Name2 Name3
1 John Tom Charles
Run Code Online (Sandbox Code Playgroud)
使用INNER JOIN我可以为客户端的每一列执行此操作,但不能为整个记录(所有三列)执行此操作.
你需要在桌子users上加入表格三次client.
SELECT a.ID,
b.name name1,
c.name name2,
d.name name3
FROM clients a
INNER JOIN users b
ON a.name1 = b.userID
INNER JOIN users c
ON a.name2 = c.userID
INNER JOIN users d
ON a.name3 = d.userID
WHERE a.ID = 1
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
172 次 |
| 最近记录: |