문제
아래 SQL의 올바른 해석은?
SQLSELECT 도서명, 저자 FROM 도서 WHERE 판매량 BETWEEN 200 AND 400 ORDER BY 판매량 DESC;
① 도서 테이블에서 판매량이 200 이상 400 미만인 도서 판매량 오름차순으로 도서명과 저자를 조회한다. ② 도서 테이블에서 판매량이 200 이상 400 이하인 도서 판매량 내림차순으로 도서명과 저자를 조회한다. ③ 도서 테이블에서 판매량이 200 초과 400 미만인 도서 판매량 내림차순으로 도서명과 저자를 조회한다. ④ 도서 테이블에서 판매량이 200 초과 400 미만인 도서 판매량 오름차순으로 도서명과 저자를 조회한다.
정답
2번
해설
정답: 2. BETWEEN 200 AND 400은 200 이상 400 이하 범위를 의미하고, DESC는 내림차순 정렬을 의미한다.
오답 풀이
- 1번: 400 미만이 아니라 400 이하이며, DESC는 내림차순이다.
- 2번: 조건과 정렬 방향이 모두 정확하다.
- 3번: BETWEEN은 초과·미만이 아니라 양 끝값을 포함한다.
- 4번: 조건과 정렬 방향이 모두 잘못 표현되었다.
보충 개념 SQL의 BETWEEN은 양 끝값을 포함하는 범위 조건이다.