정상이 삭제 :가 삭제 SQL 쿼리 '인덱스'
이DELETE
FROM Table
WHERE column1 = 'some value'
인덱스 삭제 :
난 당신이 테이블에서 행을 삭제할 때 모든 참조 테이블을 검색 할 것이라는 점을 알고있다DELETE Table1
FROM Table1 WITH(INDEX(PK_Table1))
WHERE column1 = 'some value'
, 삭제 실행이 느려집니다.
WITH INDEX를 사용하여 삭제하는 방법은 무엇입니까?
당신은 어떤 sgbd에 측정 할 수 있습니다 당신은 또한 최적화 프로그램이 선택하는 계획을 볼 수 있습니다. 이것은 간단한 인덱스를 찾기 위해 옵티 마이저가 여러분의 도움을 필요로하지 않는다는 것을 알 수 있습니다. 코드를 혼란스럽게하지 말고, 힌트를줍니다. –
그것은 자주 발생하지 않습니다. SQL Server가 최상의 실행 계획을 선택하지는 않습니다. 일반적으로 인덱스 힌트가 필요한 경우입니다. 실행 계획을 비교하고 테스트를 실행해야합니다. 요약 [귀하의 말 경주] (https://ericlippert.com/2012/12/17/performance-rant/) – GarethD
사용중인 dbms에 태그를 지정하십시오. 이 코드는 제품마다 다릅니다. – jarlh