我有一个非常庞大的表,其中包含自我关系 这种关系的关键在一个单独的表中 例如
master_table(
Id int identity,
DATA_FIELDS)
key_table(
masterId int,
relativeId int)
key_table
的两个字段都位于master_table
。
我的问题是如何从掌握中选择所有相关数据?
答案 0 :(得分:1)
此查询将为所有主数据生成子数据的相对列表(仅限Id)
select M.Id as [Master Id],D.Id as [Detail Id] from master_table M
inner join key_table MKT on (MKT.masterId = M.Id)
inner join master_table D on (MKT.relativeId = D.Id)
根据需要添加其他字段(来自主/详细信息)。