해결된 질문
작성
·
146
답변 1
0
아니요, 그렇게 사용해서는 결과가 도출되지 않습니다.
SQL에서 집계 함수를 사용할 때는 서브쿼리로 전체 테이블을 가져오거나,
그룹의 집계를 하거나 미리 계산한 다음에 그 값을 비교해야 합니다.
단순히 WHERE은 각 행별 조건만 평가할 때 사용합니다.
집계 함수는 단일 행에 대해서가 아니라 전체 테이블이나
그룹(뭔가를 묶어서 압축해야함)화 해서만 이용할 수 있기 때문에 안됩니다.
꼭 다르게 하고 싶으시다면, 이렇게는 됩니다.
지금 테이블 자체가 컬럼이 이미 답과 똑같기 때문에 전체를 뜻하는 * 을 사용해서
SELECT *
FROM 제품
WHERE 단가 < (SELECT AVG(단가) FROM 제품);
이렇게는 할 수 있습니다.
혹시 시간 여유가 생기시면, 수강평 하나 부탁드립니다... 😃
넵, 감사합니다!!