← 회차 전체 문제정처LAB 자체 제작내용 검수 완료2026 SQLD 기초 개념 문제 · SQL 기본 및 활용 · 35번
Oracle의 ORDERS(order_id, customer_id, status, total_amount) 테이블에서 상태가 'PAID'인 주문의 order_id와 total_amount 두 열만 조회하려 한다. 요구사항을 정확히 만족하는 SQL은?
- 1
SELECT * FROM orders WHERE status = 'PAID'
오답 이유WHERE 조건은 맞지만 별표는 customer_id와 status까지 모든 열을 반환하므로 '두 열만'이라는 투영 요구를 만족하지 않는다. - 2
UPDATE orders SET status = 'PAID'
오답 이유UPDATE는 기존 행의 값을 변경하는 DML이다. 조회 결과를 반환하려는 요구와 작업 종류가 다르다. - 3
SELECT order_id, total_amount FROM orders HAVING status = 'PAID'
오답 이유HAVING은 그룹 결과에 조건을 적용할 때 사용한다. GROUP BY도 없고 개별 주문 행을 거르는 조건에는 WHERE가 적절하다. - 4
SELECT order_id, total_amount FROM orders WHERE status = 'PAID'
정답 근거SELECT 목록이 필요한 두 열만 투영하고 WHERE가 PAID 행만 선택하므로 열과 행 조건을 모두 만족한다.
정답·상세해설정답 4번
조회 요구는 열 선택과 행 필터 두 부분으로 나뉜다. SELECT 목록에는 order_id와 total_amount만 두고, 개별 행의 status 조건은 WHERE에 둔다.
콘텐츠 기록콘텐츠 정보
- 자료 유형
- 정처LAB 자체 제작
- 검수 상태
- 내용 검수 완료
- 최종 검수
- 2026-08-21