강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

escho94님의 프로필 이미지
escho94

작성한 질문수

김영한의 실전 데이터베이스 - 기본편

상관 서브쿼리1

where 대신 having을 써도 되나요?

작성

·

75

0


[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예/)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)

[질문 내용]
select * from products p1

where price >= (

select avg(p2.price) from products p2 where p2.category = p1.category);

대신에

select name,price from products p1

where price >= (select avg(p2.price) from products p2

group by category

having p1.category=p2.category);

으로 써도 문제 없나요?

퀴즈

서브쿼리의 가장 근본적인 특징은 무엇일까요?

단독으로 실행되는 쿼리

다른 SQL 문 안에 포함된 쿼리

항상 한 개의 값만 반환

여러 테이블을 조인할 때만 사용

답변 1

0

안녕하세요. escho94님, 공식 서포터즈 David입니다.

네, 후자로 작성하셔도 됩니다.

다만, 전자 대비 불필요한 연산이 추가되는 단점이 있습니다.

감사합니다.

escho94님의 프로필 이미지
escho94

작성한 질문수

질문하기