我想在datagridview(C#Windows窗体)中显示两个人之间的关系。
所以,我与人做了一个(MS Access)表。每个人都有一个唯一的编号作为PK。之后我制作了一张关系表。在这个表中,我有一个人1(FK)列,关系列和人2(FK)列。
这看起来像这样:
现在我试图在datagridview中显示这个,其中列显示Fname
,Lname
,DOB
,Relation
,Fname
,Lname
,DOB
。我尝试了很多,但我不能让它发挥作用。
我希望有人可以让我知道(SQL)select
查询应该是什么样子或者我应该做些什么来使这项工作。
非常感谢!
您需要在查询中使用Person
表的两个引用,因为对于Relation
表中的每个记录,将从Person
表中显示两个单独的记录。
因此,您需要使用以下行的查询:
select
p1.fname,
p1.lname,
p1.dob,
r.relation,
p2.fname,
p2.lname,
p2.dob
from
(relation r inner join person p1 on r.pnumber1 = p1.pnumber)
inner join
person p2 on r.pnumber2 = p2.pnumber