T(ID, NAME)에서 ID는 숫자형 기본키이고 NAME은 NULL이 없는 문자열이다. 이름별로 ID가 가장 작은 행 하나만 남기려 할 때, DELETE FROM T 뒤에 붙일 조건은?
정답 4번
예를 들어 T의 (ID, NAME)이 (2,A), (5,A), (8,B), (9,B), (12,C)라면 이름별 MIN(ID)는 2·8·12이다. NOT IN은 이 목록에 없는 ID 5·9를 삭제한다. ID는 기본키라 중복과 NULL이 없다. 따라서 다른 이름의 최소 ID 때문에 삭제할 행이 잘못 남는 경우나 NULL 비교로 삭제 조건이 UNKNOWN이 되는 경우를 배제할 수 있다.
자료 정보
- 자료 유형
- 편집복원
- 검수 상태
- 내용 검수 완료
- 해설 작성·검수
- 정처LAB 편집 기준
- 최종 검수
- 2026-10-06