열이

2016-10-07 3 views
1

내가 내가 내가 내가 여기에 행 에 열에서 내 결과를 변환해야이 작업을 수행하는 그래프에 표시 할 보고서 작업 SQL 2008 데이터베이스 임 함께 일하고 나의 쿼리입니다열이

SELECT 
COUNT(CASE WHEN (pm.mortgagestatus) = 10 then 1 end) AS Received, 
SUM(case WHEN (pm.mortgagestatus) = 10 then pm.AmountRequested Else 0 END) AS [Received Amount], 
COUNT(CASE WHEN (pm.mortgagestatus) = 4 then 1 end) AS Passed, 
SUM(case WHEN (pm.mortgagestatus) = 4 then pm.AmountRequested Else 0 END) AS [Passed Amount], 
COUNT(CASE WHEN (pm.mortgagestatus) = 5 then 1 end) AS packaged, 
SUM(case WHEN (pm.mortgagestatus) = 5 then pm.AmountRequested Else 0 END) AS [Packaged Amount], 
COUNT(CASE WHEN (pm.mortgagestatus) = 6 then 1 end) AS Offered, 
SUM(case WHEN (pm.mortgagestatus) = 6 then pm.AmountRequested Else 0 END) AS [Offered Amount] 
FROM tbl_Profile AS p 
INNER JOIN tbl_Profile_Mortgage AS pm 
ON p.id = pm.fk_ProfileID 

이 쿼리는 enter image description here

내가 이런 식으로 반환하는 쿼리를 싶습니다 반환합니다.

enter image description here

이 나 차트에 데이터를 입력 할 수 있습니다. 이 문제에 대한 도움이 가장 중요합니다. case와 건배

답변

3

사용 집계 : 나는 당신의 방법 메신저는 다음과 같은 오류가 사용할 때 이것 좀 봐 주셔서

SELECT (CASE WHEN pm.mortgagestatus = 10 then 'Received' 
      WHEN pm.mortgagestatus = 4 then 'Passed' 
      WHEN pm.mortgagestatu) = 5 then 'packaged' 
      WHEN pm.mortgagestatus = 6 then 'Offered' 
     END) as Mortgage_Status, 
     COUNT(*) as Total, 
     SUM(pm.AmountRequested) as LoanAmount 
FROM tbl_Profile p INNER JOIN 
    tbl_Profile_Mortgage pm 
    ON p.id = pm.fk_ProfileID 
WHERE pm.mortgagestatus IN (4, 5, 6, 10) 
GROUP BY (CASE WHEN pm.mortgagestatus = 10 then 'Received' 
       WHEN pm.mortgagestatus = 4 then 'Passed' 
       WHEN pm.mortgagestatu) = 5 then 'packaged' 
       WHEN pm.mortgagestatus = 6 then 'Offered' 
      END); 
+0

안녕 고든 감사합니다. "표현식을 데이터 형식 int로 변환하는 산술 오버플로 오류 경고 : Null 값은 집계 또는 다른 SET 연산에 의해 제거됩니다." – RustyHamster

+0

이 이유는 Mortgage_Status – RustyHamster

+0

아래에 NULL 값을 다시 가져 오려고 시도했기 때문입니다. 이렇게 수정하면 pm.MortgageStatus (10,4,5,6)의 where 절이 추가되었습니다. 모든 도움에 감사드립니다. – RustyHamster