我有一个表ID,名字和姓氏。我也有一张孩子和父母的桌子。我想使用ID表将子表/父表从int转换为nvarchar。在此示例中,我们有两个人,马克和雷·史密斯。雷是马克的父母。雷没有父母。
People_Table
ID|First|Last
--+-----+----
0 |NULL|NULL
10|Mark|Smith
15|Ray |Smith
Parent_Child_Table
Child|Parent
-----+------
10 | 15
15 | 0
我想得到
First|Last|First|Last
-----+-----+----+-----
Mark|Smith|Ray|Smith
Ray|Smith|NULL|NULL
我试过使用INNER JOIN,但这仅给了我孩子的名字。使用两个select语句可以使我得到所有人员的一个列表,但并不能保持结构。有任何想法吗?
很抱歉编辑不当(或缺少它),这是我第一次在这里发布,我很着急。我希望不要混淆。
select p.first, p.last, c.first, c.last
from parent_child_table pc
inner join people_table p on p.id = pc.parent
inner join people_table c on c.id = pc.child
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句