[英]combining multiple columns in two tables
Here is my tables: 这是我的桌子:
id referencePerson1ID referencePerson2ID referencePerson3ID
1 1 2 3
T2 referencePerson: T2参考人员:
id name
1 Peter
2 John
3 Mary
I want to get the following result when I choose T1 id =1
: 当我选择T1 id =1
时,我想得到以下结果:
id referencePerson1 referencePerson2 referencePerson3
1 Peter John Mary
How can I do that? 我怎样才能做到这一点? Thanks 谢谢
This is one basic way to do things: 这是做事的一种基本方法:
SELECT T1.id, P1.name, P2.name, p3.name
FROM record T1 LEFT JOIN referencePerson P1
ON T1.referencePerson1ID=P1.id
LEFT JOIN referencePerson P2
ON T1.referencePerson2ID=P2.id
LEFT JOIN referencePerson P3
ON T1.referencePerson3ID=P3.id
Another way when number of persons is unknown can be done using a PIVOT 人数未知的另一种方法是使用PIVOT
You can do that with three times JOIN : 您可以通过三次JOIN来做到这一点:
SELECT t1.id, t21.name, t22.name, t23.name
FROM T1
INNER JOIN T2 t21 ON t21.id = T1.referencePerson1ID
INNER JOIN T2 t22 ON t22.id = T1.referencePerson2ID
INNER JOIN T2 t23 ON t23.id = T1.referencePerson3ID
WHERE T1.id = 1
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.