次のテーブルがあるとします。
CREATE TABLE test(
id int identity not null primary key,
code nvarchar(50),
name nvarchar(50),
node_code nvarchar(50),
parent_node nvarchar(50),
prop1 int,
prop2 datetime,
prop3 nvarchar(50)
);
コードと名前は関連付けられており、プロパティへのキーを形成します。したがって、テーブルには次のデータを含めることができます。
CODE001 NAME001 [3 PROPS]
CODE001 NAME001 [3 PROPS]
CODE002 NAME002 [3 PROPS]
CODE002 NAME002 [3 PROPS]
...
これが良いデザインではないことはわかっていますが、それと一緒に暮らす必要があります。
ここでの問題は、ノード コードと親ノード コード (ノード コードはコードと名前キーに固有のもの) と共にコード名のリストを取得したいのですが、プロパティは取得したくないということです。私がすることができます:
select DISTINCT code, name, node_code, parent_code from test
しかし、これが最も効率的な方法であるかどうかは真剣に疑問です。提案が必要です。