2017-09-28 10 views
0

에서 "같은 키를 가진 SSRS 항목이 추가되었습니다"하기가 아래의 SQL 추가되었습니다 코드를 문제가 무엇인지 벌금을 시도했지만 그것을 찾을 수 없습니다. "회사"후 하나 "MEMBER_TYPE"후 한 -오류 나도 같은 키를 사용하여 오류 SSRS 항목을 얻고있다</p> <p>... 내가 여기 나를 도울 수있는 것보다 사람이 더 똑똑 기대 SQL 서버 2014

누군가 당신은 "분류"라는 두 개의 필드가 :

SELECT 
    Name.ID, Name.COMPANY, Name.CATEGORY, 
    HOUSEPOP.HH_INV AS 'Current Year HH_INV', 
    HOUSEPOP_1.HH_INV AS 'Last Year HH_INV', 
    name.MEMBER_TYPE, name.CATEGORY, 
    HOUSEPOP.TOTAL_POP, 
    (HOUSEPOP.HH_INV - HOUSEPOP_1.HH_INV) AS 'Difference', 
    ((HOUSEPOP.HH_INV - HOUSEPOP_1.HH_INV)/HOUSEPOP_1.HH_INV) AS '% Change' 
FROM    
    Name 
INNER JOIN 
    HOUSEPOP ON Name.ID = HOUSEPOP.ID 
INNER JOIN 
    HOUSEPOP AS HOUSEPOP_1 ON Name.ID = HOUSEPOP_1.ID 
WHERE 
    HOUSEPOP.BILL_YEAR = @Bill_Year 
    AND HOUSEPOP_1.BILL_YEAR = @Bill_Year -1 
ORDER BY 
    ID 
+0

[SSRS에서 새 보고서를 만들 때 "동일한 키가있는 항목이 이미 추가되었습니다"라는 오류 메시지가 나타나는 이유는 무엇입니까?]] (https://stackoverflow.com/questions/14466874/) in-ssrs-why-do-i-get-the-error-item-same-key-has-already-added-wh) – ViKiNG

답변

0

나를 도울 수 있습니다. SSRS는 고유 한 열 이름 만 허용합니다.

1

두 개의 CATEGORY 열이 있습니다. SQL Server/SSMS는 쿼리에서 중복 열을 허용하지만 SSRS는 중복을 가질 수 없습니다. 별칭을 지정해야합니다.

SELECT 
     Name.ID, 
     Name.COMPANY, 
     Name.CATEGORY,    --CATEGORY column 1 here 
     HOUSEPOP.HH_INV AS 'Current Year HH_INV', 
     HOUSEPOP_1.HH_INV AS 'Last Year HH_INV', 
     name.MEMBER_TYPE, 
     name.CATEGORY AS 'CATEGORY2', --I aliased your 2nd CATEGORY column here 
     HOUSEPOP.TOTAL_POP, 
     (HOUSEPOP.HH_INV - HOUSEPOP_1.HH_INV) as 'Difference', 
     ((HOUSEPOP.HH_INV - HOUSEPOP_1.HH_INV)/HOUSEPOP_1.HH_INV) as '% Change' 
FROM   Name 
INNER JOIN  HOUSEPOP 
ON    Name.ID = HOUSEPOP.ID 
INNER JOIN  HOUSEPOP AS HOUSEPOP_1 
ON    Name.ID = HOUSEPOP_1.ID 
WHERE   HOUSEPOP.BILL_YEAR = @Bill_Year 
AND   HOUSEPOP_1.BILL_YEAR = @Bill_Year -1 
ORDER BY  ID 

나는 또한 읽을 수 있도록 쿼리를 포맷하는 데 약간의 시간이 걸렸다. 이것은 디버그 도움이 될 것입니다 (적어도 나를 돕는).

편집 : 검색어가 다시 보였으므로 CATEGORY가 중복 된 것처럼 보이므로 별칭 대신 별명을 삭제해야합니다.