これがn00bの質問である場合は申し訳ありません。私は T-SQL の専門家ではありませんが、実用的な理解はしています。私はこれを明確にしようとしますが、最初はややこしいです。
問題
私は2つのテーブルを持っています。テーブル A はアイテムを表し、テーブル B はアイテム間の関係を表します。
テーブル A: アイテム ID、名前、...
表 B: ParentID、ThisID、ChildID
私が直面している問題は、テーブル B の 3 つの ID すべてがテーブル A の主キーを指しているということですが、関係の役割ごとに A.Name ごとにグループで結果を並べ替える必要があります (それが理にかなっている場合)。
したがって、テーブル A が次の場合:
1 ItemZ
2 ItemA
3 ItemD
4 ItemX
5 ItemT
表 B には次のものがあります。
1 3 5
1 2 4
1 3 4
1 2 3
2 4 5
1 2 5
返された結果を、親アイテムの名前、次に「この」アイテム名、次に子アイテムの名前でグループ化する必要があります...このシナリオでは:
2(A) 4(X) 5(T)
1(Z) 2(A) 3(D)
1(Z) 2(A) 5(T)
1(Z) 2(A) 4(X)
1(Z) 3(D) 5(T)
1(Z) 3(D) 4(X)
質問
ORDER BY
グループ化を維持しながら、同じフィールド (テーブル A.Name)を使用するにはどうすればよいですか?
ノート
私はこれを読みました:SQL Ordering by Date but Maintain Foreign Key Groupingsですが、答えが私の質問に合っているとは思いません。ここと Google で質問を探しましたが、重複が見つかりません。