2013-12-18 2 views
0

1 열 : 연도를 정수 (2011, 2012 및 2013)로, 열 2 : KPI를 인덱스 (0-100)로 사용하는 데이터 집합이 있습니다.SSRS 쿼리가있는 테이블의 피벗 데이터

열과 행의 KPI가있는 행렬과 같은 데이터를보고하고 싶습니다. 3 년마다 한 칼럼. 해당 항목에 대해서는 행렬 옵션이 정상입니다.

그러나 2012 년부터 2013 년까지의 개발 현황을 보여주는 광고 (Negativ는 빨간색, 중립은 노란색, 긍정적 인 개발은 녹색)을 광고에 표시하고 싶습니다.

SELECT KPI,  
     AVG(case when [year] = 2013 then indeks ELSE NULL end) as [2013], 
     AVG(case when [year] = 2012 then indeks ELSE NULL end) as [2012], 
     AVG(case when [year] = 2011 then indeks ELSE NULL end) as [2011] 
from KVI_overblik 
Group BY KPI 
order BY KPI 

을 그리고 내가 계산 (KPI.2013 - KPI.2012)를 만들 수있는 4 열에 :

SQL에서 난 그냥 다음과 같은 방법으로 내 데이터를 피벗 것입니다.

어떻게 SSRS 쿼리에서 렉크를 만들 수 있습니까? 매트릭스를 사용하지 않고 매뉴얼 테이블을 디자인하기 위해서.

또는 행렬을 계속 사용하면 4 열을 만들 수 있습니까?

답장을 기다리겠습니다.

최고의 레거시.

답변

0

행렬 문제를 해결했습니다. 행렬에 행 합계를 추가했습니다. 이 합계는 모든 행 값의 합계입니다. 그러므로 나는 새 행 전체 coulmn 내 표현을 수정했다 :

=IIF(
(isnothing(avg(IIF(Fields!year.Value="2012",Fields!indeks.Value,nothing)))) or (isnothing(avg(IIF(Fields!year.Value="2013",Fields!indeks.Value,nothing)))) 
,nothing 
, 
avg(IIF(Fields!year.Value="2013",Fields!indeks.Value,nothing)) 
-avg(IIF(Fields!year.Value="2012",Fields!indeks.Value,nothing)) 

) 

가 난 단지 2012 결과에 비해 최신 개발 2013 결과를합니다. 표현식은 개발을 계산합니다.

마지막으로, 계산 된 필드에 표시기를 삽입했습니다.

관련 문제