SQL - 문제 미리보기

문제 1730

hard
다음 쿼리에서 빈칸에 들어갈 올바른 연산자는? ```sql SELECT ProductName, Price FROM Products WHERE CategoryID ______ (SELECT CategoryID FROM Categories WHERE CategoryName = 'Electronics' OR CategoryName = 'Books'); ``` 목적: Electronics 또는 Books 카테고리에 속한 상품들을 조회
A. `=`
B. `IN`
C. `LIKE`
D. `BETWEEN`

정답: B

서브쿼리가 여러 값을 반환하는 경우 IN 연산자를 사용해야 합니다. IN 연산자의 특징: • 다중 값 비교: 하나의 값이 여러 값 목록 중 하나와 일치하는지 확인 • 서브쿼리 지원: 서브쿼리 결과와 비교 가능 • OR 조건의 축약: 여러 개의 OR 조건을 간단히 표현 실행 과정: 1. 서브쿼리 실행: ```sql SELECT CategoryID FROM Categories WHERE CategoryName = 'Electronics' OR CategoryName = 'Books' -- 결과 예: [1, 3] (Electronics=1, Books=3) ``` 2. 메인 쿼리 실행: ```sql SELECT ProductName, Price FROM Products WHERE CategoryID IN (1, 3) -- CategoryID가 1 또는 3인 상품들 조회 ```

💡 학습 팁

이 문제를 포함한 SQL 과목의 모든 문제를 순차적으로 풀어보세요. 진행상황이 자동으로 저장되어 언제든지 이어서 학습할 수 있습니다.