2012-04-01 4 views

답변

3

: 나는 그것을 할 때

SELECT id_dzialu, sum(placa) as suma 
FROM pracownicy 
WHERE suma = 8000 
GROUP BY id_dzialu 

, 그것은 오류를 반환합니다.

Oracle의 경우, 쿼리는 때문에 where 절은 아직 수행되지 않은 집계를 처리되는 시점에 where 절에 집계 함수를 참조 할 수 없습니다, 짧은에서

select id_dzialu, sum(placa) as suma from pracownicy group by id_dzialu having sum(placa) = 8000 
+1

당신은 where 절을 제거해야하며 그것은 80000 대신 8000입니다. –

+0

@AmritpalSingh 감사합니다. –

10

해야한다. 대신 having 절을 사용하십시오.

+0

감사합니다. 내가 입력 할 경우 왜 select id_dzialu, sum(placa) as suma from pracownicy group by id_dzialu having suma = 80000 나는 여전히 오류가 있습니까? – user1306431

+0

그것은 사용하는 DBMS에 따라 다릅니다. 오라클에서는 MySQL에서 오류가 발생하지만 그렇지 않은 경우 오류가 발생합니다. 해야 할 일은'sum (placa) = 80000'이다. 그것을 확인하십시오. –

관련 문제