Bạn cũng có thể thực hiện việc xoay vòng như sau:
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
Bạn không nên thực hiện một truy vấn con riêng biệt cho từng giá trị.
pivot
tuyên bố cũng là một sự thay thế rất hợp lý. Tôi có xu hướng gắn bó với phiên bản rõ ràng (ở trên), vì nó mang lại cho tôi sự linh hoạt hơn trong việc thêm cột.