아래 쿼리는 데이터베이스에서 레코드를 검색하여 보고서에 표시하는 데 사용됩니다. 그러나 SENOKO 및 EUNOS 열은 중복 행을 모든 행에 표시합니다. 이것은 하위 쿼리가 기본 쿼리에 연결되어 있지 않은 것처럼 보입니다 필터링이 수행되지 않습니다.하위 쿼리가 주 쿼리에 연결되지 않았습니다.
SELECT whbal.customer, customer.imp_license_no, customer.psq_level,
(SELECT SUM(CONVERT(DECIMAL(8,3),(CONVERT(DECIMAL(8, 3), whbal.qty_good) + CONVERT(DECIMAL(8, 3), whbal.qty_slack)) * CONVERT(DECIMAL(8, 3), whbal.std_weight)/1000))
FROM whbal WHERE warehouse='SKW') AS SENOKO
(SELECT SUM(CONVERT(DECIMAL(8,3),(CONVERT(DECIMAL(8, 3), whbal.qty_good) + CONVERT(DECIMAL(8, 3), whbal.qty_slack)) * CONVERT(DECIMAL(8, 3), whbal.std_weight)/1000))
FROM whbal WHERE warehouse='EKW') AS EUNOS
FROM customer
INNER JOIN whbal ON whbal.customer=customer.customer AND whbal.date_create<[email protected]
INNER JOIN stktype ON whbal.stock_type=stktype.stock_type
WHERE whbal.customer BETWEEN @cust1 AND @cust2 AND [email protected]
GROUP BY whbal.customer, customer.customer, customer.imp_license_no, customer.psq_level
결과 :
사람이 코멘트와 가이드하시기 바랍니다 문제 및 솔루션이 무엇인지 알고있다. 감사 드리며 미리 감사드립니다.
또는 양자 택일로, 데이터가 모두'웨어 하우스 같은 결과를를 = 'SKW''와'창고 ='EKW ''. 작은 데이터 샘플을 제공하고 결과를 보여 주면 '창고'를 포함하여 모든 열에 테이블 별칭을 사용하는 것과 마찬가지로 도움이됩니다. –
@GordonLinoff 제 수정 된 질문을 참조하십시오. EUNOS 열은 SENOKO 열 옆의 가장 오른쪽에 있습니다. 감사합니다 – user2901955
당신은 당신의 메인 쿼리에서 아무 것도 부질의를 연결하지 않았습니다 ... 왜 어떤 연결이 있어야합니까? whbal.customer = customer.customer WHERE 창고 = 'SKW'AND @ cust1과 @의 cust2) 간의 whbal.customer SENOKO AS – DarkSquirrel42