2016-07-10 6 views
0

내 머리를 긁적니다.SUM 결과가 GROUP BY HAVING 인 경우

다음 쿼리는이 개 결과를 반환 3,5 (가 같거나 3 회 이상 테이블에서 발생하는 두 팀이) ...하지만 난 그것이 내가 해봤 8

반환해야 GROUP BY & 행운이 있지만 중첩되지 않습니까?

SELECT SUM(play_in) AS Total FROM Transfer WHERE id_str='10' GROUP BY team HAVING COUNT(*)>=3 

시도했습니다 ... 응답이 없습니까? "롤업"

SELECT SUM(Total) FROM (SELECT SUM(play_in) AS Total FROM Transfer WHERE id_str='10' GROUP BY team HAVING COUNT(*)>=3) AS The_Total 

는 내가 가진 모든 있던 끝에 다음과 같은 초기 문에 추가 할

+0

단일 쿼리에서 필요한 결과를 얻을 수 없습니다. 'SUM (총계) FROM (...)'을 선택해야합니다 (게시 한 쿼리로 줄임표를 대체하십시오). – axiac

+0

행운이 없습니까? 내 초기 질문을 수정했습니다 – Tatters

+0

어떤 RDBMS를 사용하고 있습니까? –

답변

0

시도 "모든 파생 테이블은 자신의 별명을 가지고 있어야합니다"없이 같은 The_Total을 추가했다. 이렇게하면 결과에 총계가있는 항목이 추가되고 팀 열에는 vale이 null로 남습니다.

단점은 그룹별로 null이있는 항목 만 표시 할 수 없으므로 클라이언트 응용 프로그램에서이 항목을 필터링해야한다는 것입니다.

+0

팀과 함께 롤업? 그것을 받아 들였지만 결과를 돌려주지 않았습니까? – Tatters