Anda juga dapat melakukan pivot seperti ini:
select workweek,
sum(case when Catg = 'Cat1' then cost end) as Cat1TotalCost,
sum(case when Catg = 'Cat2' then cost end) as Cat2TotalCost,
sum(case when Catg = 'Cat3' then cost end) as Cat3TotalCost
from DataTable
group by Workweek
Anda tidak boleh melakukan subkueri terpisah untuk setiap nilai.
pivot
pernyataan juga merupakan alternatif yang sangat masuk akal. Saya cenderung tetap menggunakan versi eksplisit (di atas), karena ini memberi saya lebih banyak fleksibilitas dalam menambahkan kolom.