SQL

SQL

UPDATE 문에서 WHERE 절을 빠르게 처리하려면 인덱스를 활용하라

페이지 정보

profile_image
영삼이
0건 48회 25-03-28 15:39

본문

UPDATE 문에서 WHERE 절을 빠르게 처리하려면 인덱스를 활용하라

필터 조건에 인덱스를 추가하면 UPDATE 성능을 최적화할 수 있다


UPDATE 문에서 조건에 인덱스가 없는 경우

UPDATE orders
SET status = 'shipped'
WHERE user_id = 1234;
  • user_id에 인덱스가 없으면, UPDATE가 실행될 때 전체 테이블을 스캔하여 조건에 맞는 행을 찾는다.

  • 테이블에 많은 데이터가 있을 경우 성능 저하가 발생한다.


✅ 필터 조건에 인덱스를 추가하여 성능 최적화

CREATE INDEX idx_user_id ON orders(user_id);
UPDATE orders
SET status = 'shipped'
WHERE user_id = 1234;
  • user_id에 인덱스를 추가하면 해당 컬럼에 대한 필터링이 훨씬 빨라짐

  • 인덱스를 활용하여 빠르게 일치하는 행만 찾고, 업데이트할 수 있음


추가 팁

  • 인덱스 생성 시 성능 개선: UPDATE 쿼리가 자주 실행되는 컬럼에 인덱스를 추가하면, 매번 전체 테이블을 스캔하지 않고 빠른 검색이 가능.

  • 인덱스가 지나치게 많으면 오히려 성능 저하가 올 수 있으므로 최적화가 필요하다.


✔️ UPDATE 문에서 조건 컬럼에 인덱스를 추가하여, 성능을 최적화하고 불필요한 테이블 스캔을 줄이자.
이렇게 하면 대용량 데이터에서도 빠르게 처리할 수 있다.

댓글목록

등록된 댓글이 없습니다.