퍼펙트!
정답률 100%
문제별 결과
SQL에서 트랜잭션의 ISOLATION LEVEL은 성능에 영향을 주지 않는다.
높은 격리 수준은 더 많은 잠금을 필요로 하여 성능이 저하됩니다. READ UNCOMMITTED가 가장 빠르지만 더티 리드가 발생합니다.
SQL에서 ORDER BY는 GROUP BY 전에 실행된다.
SQL 실행 순서는 FROM → WHERE → GROUP BY → HAVING → SELECT → ORDER BY입니다. ORDER BY가 가장 마지막입니다.
SQL의 INDEX를 많이 생성하면 INSERT 성능이 향상된다.
인덱스는 SELECT 성능을 향상시키지만, INSERT/UPDATE/DELETE는 인덱스 업데이트로 성능이 저하됩니다.
SQL에서 LEFT JOIN은 오른쪽 테이블의 모든 행을 반환한다.
LEFT JOIN은 왼쪽 테이블의 모든 행을 반환하고, 매칭되지 않는 오른쪽 행은 NULL입니다.
SQL에서 Window Function(OVER)은 GROUP BY 없이 집계를 수행할 수 있다.
ROW_NUMBER() OVER(PARTITION BY dept ORDER BY salary DESC)처럼 그룹핑 없이 각 행에 집계값을 추가합니다.
SQL에서 TRUNCATE는 테이블의 모든 데이터를 삭제하며 롤백할 수 없다.
TRUNCATE는 DDL 명령으로 로그를 남기지 않아 빠르지만, 롤백이 불가능합니다. DELETE는 DML로 롤백 가능합니다.
SQL에서 LEFT JOIN은 왼쪽 테이블의 모든 행을 포함한다.
LEFT JOIN은 왼쪽 테이블의 모든 행을 포함하고, 오른쪽 테이블에 매칭이 없으면 NULL로 채웁니다.
SQL에서 UNION은 두 쿼리 결과를 합치고 중복을 제거한다.
UNION은 중복을 제거합니다. UNION ALL은 중복을 포함하여 더 빠릅니다.
SQL에서 복합 인덱스의 컬럼 순서가 쿼리 성능에 영향을 준다.
복합 인덱스 (a, b, c)에서 a를 조건으로 사용해야 인덱스가 활용됩니다(Leftmost Prefix Rule).
SQL에서 LIKE %keyword%는 인덱스를 활용할 수 있다.
앞에 %가 있으면 인덱스를 활용할 수 없습니다. keyword%처럼 뒤에만 %가 있어야 인덱스를 사용합니다.