SQL 개발자 (SQLD) / 02 SQL기본및활용
DISTINCT를 사용한 SELECT 문에서 결과에 표시하지 않은 컬럼으로 정렬할 수 없는 이유는?
- 정렬 기준 컬럼에는 반드시 인덱스가 필요하기 때문이다
- DISTINCT는 ORDER BY보다 나중에 처리되기 때문이다
- 표준 SQL이 두 절의 동시 사용을 금지하기 때문이다
- 중복을 제거하면 어느 원본 행의 값을 기준으로 삼을지 정할 수 없기 때문이다
정답과 해설 보기
4. 중복을 제거하면 어느 원본 행의 값을 기준으로 삼을지 정할 수 없기 때문이다
중복 제거로 여러 행이 하나로 합쳐지면 그 행이 원래 어느 행이었는지가 사라집니다. 그래서 결과에 남지 않은 컬럼의 값이 무엇이어야 할지 결정할 수 없습니다.
모던지가 직접 쓴 문항입니다. 시행기관과 관계가 없습니다.