← 문제 목록
고급
SQL
100P
REPEATABLE READ 팬텀 리드
MySQL 기본 격리 수준에서 트랜잭션 내 같은 범위 쿼리의 결과가 다를 수 있는 상황을 찾으세요:
SQL
-- 트랜잭션 A (REPEATABLE READ)
START TRANSACTION;
SELECT COUNT(*) FROM orders
WHERE status = 'pending';
-- 결과: 10
-- 이 시점에 트랜잭션 B가 새 pending 주문 INSERT 후 COMMIT
SELECT COUNT(*) FROM orders
WHERE status = 'pending';
-- 결과: 여전히 10 (스냅샷 읽기)
UPDATE orders SET priority = 1
WHERE status = 'pending';
-- 11행 업데이트됨! (현재 읽기)
0명 풀이 · 정답률 0%