2017-04-08 1 views
0

몇 가지 정보를 얻을 필요가있는 테이블 (t)이 있습니다. 이 2 개의 쿼리를 사용하고 있습니다.
하지만 단일 쿼리로 만들 수있는 방법이 있습니까?SQL Server 두 쿼리를 결합하십시오.

SELECT nrplu, SUM(preco) as TP, SUM(kg) as TK, seccao 
FROM t 
GROUP BY nrplu, seccao 


SELECT nrplu, count(*) as TT FROM t GROUP BY nrplu 

답변

1

이 방법이 유용 할 것입니다.

WITH CTE_preselect AS 
(SELECT nrplu, count(*) as TT 
FROM t 
GROUP BY nrplu) 

SELECT t.nrplu,TT, SUM(preco) as TP, SUM(kg) as TK, seccao 
FROM t 
    JOIN CTE_preselect ON t.nrplu = CTE_preselect.nrplu 
GROUP BY t.nrplu,TT, seccao 
+0

" 'CTE_preselect'은 (는) 인식 된 GROUP BY 옵션이 아닙니다."오류가 발생합니다. –

+0

''t JOIN t'에서't JOIN CTE_preselect'로 변경하십시오 – TriV

+0

답변을 업데이트했습니다. – Jason

관련 문제