我有下表
Id Name ParentName
100 Alain 400
200 Maria 400
300 Robert 500
400 Fred 0
500 Steve 0
我想从此表中提取的内容如下:
Name ParentName
Alain Fred
Maria Fred
Robert Steve
我尝试了以下声明,但没有得到所需的结果:
SELECT Name,ParentName
FROM tblFam
WHERE ParentName
IN ( SELECT Id FROM tblFam)
知道如何获得它吗?
答案 0 :(得分:2)
你需要加入与
相同的表格select
t1.name,
t2.name as parentname
from table_name t1
left join table_name t2 on t1.ParentName = t2.id
答案 1 :(得分:1)
您可以使用内部联接:
SELECT child.Name, parent.Name FROM tblFam child
INNER JOIN tblFam parent ON parent.Id = child.ParentName
一个小小的观察结果:最好将ParentName
重命名为ParentId
答案 2 :(得分:0)
SELECT Name, (SELECT Name FROM tblFam WHERE id = ParentName) AS ParentName
FROM tblFam;