1
私はAnimal
テーブルの下記の表の構造を有する:アップデート - SQL Server 2008の
AnimalId | AnimalName | SelectAnimal
1 | Cat | NULL
2 | Dog | NULL
3 | Sheep | NULL
4 | Cow | NULL
AnimalFeature
がテーブル:
Animal Id | Feature | Present
1 | Teeth | Y
1 | Milk | Y
1 | Tail | Y
2 | Teeth | Y
3 | MILK | Y
4 | Teeth | Y
4 | MILK | N
4 | Tail | Y
と私はコンマを生成していますが次のクエリを使用して現在の列の区切りリスト
SELECT DISTINCT
A1.AnimalId,
STUFF((SELECT ', ' + ltrim(rtrim(A2.Present))
FROM Animal AS A2
WHERE A1.AnimalId = A2.AnimalId
FOR XML PATH(''), TYPE).value('.', 'NVARCHAR(MAX)'), 1, 1, '') As ConcatValue
FROM
Animal as A1
GROUP BY
AnimalId;
reqすべての機能が存在する場合にのみ、動物マスターテーブルを更新することです。
最初の2つの機能がyesの場合、selectanimal
列はyesを返します.がない場合は、これらのレコードを無視する必要があります。
最終的な出力は、あなたが任意のポインタを与えるか、これを実現する方法に助けてもらえ
1 CAT Y
2 DOG NULL
3 SHEEP NULL
4 COW N
ようにすべきですか?次のような
'行う一切重複を返さないBY'あなた' GROUP以来DISTINCT'を選択する必要が必要なものを行う必要があります! (やや類似した機能、集合関数が主な違いです) – jarlh