T_item
idx item
1 아이템1
2 아이템2
3 아이템3
4 아이템4
.
.
.
T_Sell
Company item Cnt Sell_Date
고려상사 아이템2 5 2014-03-02
조선상사 아이템3 7 2014-03-03
삼성전자 아이템2 6 2014-03-04
LG전자 아이템5 10 2014-03-04
삼성전자 아이템5 7 2014-03-06
현대자동차 아이템4 5 2014-03-07
LG전자 아이템1 2 2014-03-08
LG전자 아이템1 7 2014-03-09
현대자동차 아이템4 10 2014-03-09
LG전자 아이템3 8 2014-03-10
.
.
.
이런식으로 2개 테이블에 데이터가 있는데
업체별로 (Cnt 합이 많은순으로) 아이템 별로 데이터를 뽑아오고 싶은데
어떻게 해야하죠?
출력폼
업체명 아이템1 아이템2 아이템3 아이템4 아이템5 아이템6 아이템7 아이템8 아이템9
LG전자 9 8 10
현대자동차 15
삼성전자 6 7
조선상사 7
고려상사 5
Comment 1
-
Hisory
2014.04.25 09:41
Declare @tb1 table
(
idx int
, item varchar(50)
)
Declare @tb2 table
(
Company varchar(50)
, item varchar(50)
, cnt int
, Sell_Date Varchar(10)
)
insert @tb1(idx,item)
values ('1','아이템1')
,('2','아이템2')
,('3','아이템3')
,('4','아이템4')
,('5','아이템5')
,('6','아이템6')
,('7','아이템7')
,('8','아이템8')
,('9','아이템9')
,('10','아이템10')
insert @tb2 (Company , item , cnt , Sell_Date )
values ('고려상사','아이템2','5','2014-03-02')
,('조선상사','아이템3','7','2014-03-03')
,('삼성전자','아이템2','6','2014-03-04')
,('LG전자','아이템5','10','2014-03-04')
,('삼성전자','아이템5','7','2014-03-06')
,('현대자동차','아이템4','5','2014-03-07')
,('LG전자','아이템1','2','2014-03-08')
,('LG전자','아이템1','7','2014-03-09')
,('현대자동차','아이템4','10','2014-03-09')
,('LG전자','아이템3','8','2014-03-10')
select
*
from
(
select t2.* from @tb1 as t1
inner join @tb2 as t2 on
t2.item = t1.item
) As tmp
pivot
(
sum(cnt)
for item in ([아이템1],[아이템2],[아이템3],[아이템4],[아이템5],[아이템6],[아이템7],[아이템8],[아이템9],[아이템10])
) As pvt