0
私は一度グループ化されたレコードのセットを持っています。そのグループのレコードの組み合わせに基づいてカテゴリを割り当てたいと思っています。Transact-SQLのgroup-by句の項目に基づいてカテゴリを設定する方法は?
これについては私が考えることができる最高の方法が不思議でした私は下記のだが、それを行うには、より巧妙な方法があるかもしれないと思ってきたものである(多分UDFを使用して?)
SELECT *
, case when productgroup in ('chihuaha','labrador') then 1 else 0 end AS Dog
, case when productgroup in ('siamese', 'tabby') then 1 else 0 end as Cat
INTO #tmp_items
FROM dbo.Items
SELECT docket
, sum(value)
, case when sum(Dog) > 0 and sum(Cat) > 0 then 'Dog and Cat'
when sum(Dog) > 0 and sum(Cat) = 0 then 'Dog Only'
when sum(Dog) = 0 and sum(Cat) > 0 then 'Cat Only'
end
as Purchase_Type
FROM #tmp_items
GROUP BY docket
この回答は、ルックアップテーブルに左外部結合で集約選択を書き込むのに役立ちました。ありがとうございました! –