0

自己関係を含む非常に巨大なテーブルがあります。この関係のキーは別のテーブルの中にあります。

master_table(
  Id int identity, 
  DATA_FIELDS)


key_table(
  masterId int,
  relativeId int)

の両方のフィールドがkey_tableにありmaster_tableます。

私の質問は、マスターからすべての関連データを選択する方法ですか?

4

1 に答える 1

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)

必要に応じて (マスター/詳細から) 他のフィールドを追加します。

于 2013-09-16T07:34:57.470 に答える