Overview
: PIVOT turns the
unique values from one column in the expression to multiple columns in result,
and applies aggregation on remaining value found in resultant output.
Example:
lets create a table for this as follows –
create table demo(id int identity(1,1), item nvarchar(max), category nvarchar(max), qty int)
now lets insert some items in this
table –
insert into demo(item, category, qty) values('item01', 'cat01', 5)
insert into demo(item, category, qty) values('item02', 'cat03', 5)
insert into demo(item, category, qty) values('item02', 'cat01', 5)
insert into demo(item, category, qty) values('item01', 'cat02', 5)
insert into demo(item, category, qty) values('item03', 'cat01', 5)
insert into demo(item, category, qty) values('item01', 'cat01', 5)
insert into demo(item, category, qty) values('item02', 'cat03', 5)
insert into demo(item, category, qty) values('item02', 'cat01', 5)
insert into demo(item, category, qty) values('item03', 'cat01', 5)
insert into demo(item, category, qty) values('item02', 'cat02', 5)
Lets apply our PIVOT query on this –
select * from(select item, category, qty from demo
)datatable
PIVOT
(
sum(qty) for category IN ([cat01], [cat02], [cat03])
)
Pivottable
Result :
No comments:
Post a Comment