Iが値を持つテーブルを持っているキーに複数の条件または複数の行のために、分離しますカンマで区切ります。戻り列は
例: 代わりの
1 idx here
1 idx there
作品
1 idx here, there
クエリを返す必要があります。
DECLARE @commaSeperatedRes NVARCHAR(MAX);
SELECT @commaSeperatedRes = COALESCE(@commaSeperatedRes + ', ', '') + ColumnKey
FROM Table1
WHERE Table1.Key1= 1 AND Table1.Key2 = 'idx';
print @commaSeperatedRes
問題はあるが、私は複数の行のためにこれを返す必要があります:
1 idx here, there
2 idx where, why
DECLARE @commaSeperated NVARCHAR(MAX);
SELECT @commaSeperatedRes = COALESCE(@commaSeperated + ', ', '') + ColumnKey
FROM Table1
WHERE (Table1.Key1= 1 and Table1.Key2 = 'idx')
OR
(Table1.Key1 = 2 Table1.Key2 = 'idx')
print @commaSeperatedRes
また、これらの結果を一時テーブルに挿入して、値が他のテーブルのいくつかの列に追加されるようにします。理想的には、私はうまくいく私の一時テーブルは次のようになります。
TKey1 TKey2 TColumnKey
1 idx here, there
2 idx where, why
エイミー「IDX」はでない限り、私は、おそらく仕事ができる「作品クエリ」とは思いません非修飾カラム参照。 "idx"は文字列か列名であると思われますか?私のソリューションでは、Key2 = 'idx'のTable1の行だけを気にかけていると仮定しています。 –
はい正しいです。 Typo、それはkey2 = 'idx'でなければなりません –