次の 2 つのテーブルを想像してください。
create table MainTable (
MainId integer not null, -- This is the index
Data varchar(100) not null
)
create table OtherTable (
MainId integer not null, -- MainId, Name combined are the index.
Name varchar(100) not null,
Status tinyint not null
)
からすべての行を選択し、それぞれにMainTable
一致するすべての行を結果セットの 1 つのフィールドに結合します。MainId
OtherTable
次のデータを想像してください。
MainTable:
1, 'Hi'
2, 'What'
OtherTable:
1, 'Fish', 1
1, 'Horse', 0
2, 'Fish', 0
次のような結果セットが必要です。
MainId, Data, Others
1, 'Hi', 'Fish=1,Horse=0'
2, 'What', 'Fish=0'
これを行う最もエレガントな方法は何ですか?
(コンマが結果の文字列の前または最後にあることを心配しないでください。)