이 목록에 ID가있는 모든 레코드를 삭제하려는 ID (1, 4,6,7) 및 db 테이블의 목록이있는 경우이 작업을 수행하는 가장 빠른 방법은 무엇입니까? ?delete id가 목록에있는 경우
귀하의 질문은 거의 이것에 대한 SQL 주문
61
A
답변
105
:
DELETE FROM table WHERE id IN (1, 4, 6, 7)
10
delete from t
where id in (1, 4, 6, 7)
-5
정답은 그 속도가 사용중인 특정 구현/엔진의 특성에 따라, 당신은 조심해야 그 이 질문에 확실한 답을 줄 수있는 척 돌팔이.
시스템의 최적화 프로그램이 매우 열악하여 'WHERE id IN (...)'의 최적화 기회를 발견하지 못하면 테이블 스캔을 수행하며 이는 4를 제공하는 것보다 훨씬 느릴 수 있습니다 별도의 삭제 명령.
+1
쓰레기. 4 개의 개별 삭제가 더 빨라질 수있는 하나의 데이터베이스 엔진을 인용하십시오. – Blorgbeard
+1
시스템의 최적화 프로그램이 너무 열악한 경우 ... 다른 데이터베이스 엔진으로 전환해야합니다 –
관련 문제
- 1. JQuery - DIV ID가 표시되는 경우
- 2. sql delete 문
- 3. Python에서는 목록에있는 목록이나 목록에있는 객체를 사용합니까?
- 4. ID가
- 5. 목록에있는 항목을 플렉스로 추가하기
- 6. Hibernate delete operation
- 7. div에있을 때 목록 항목 인라인이 무시되는 경우 목록에있는 내용이 무시됩니다.
- 8. 목록에있는 UITableView 목록 내용
- 9. 목록에있는 반복 항목 python
- 10. WPF의 목록에있는 이미지 MVVM
- 11. F #의 목록에있는 Task.WaitAll
- 12. 목록에있는 항목 수 반환
- 13. 목록에있는 구체적인 구현을 반환하십시오.
- 14. 목록에있는 튜플의 값에 액세스
- 15. CakePHP delete() 함수가 작동하지 않습니다.
- 16. HTTP 400을 URL을 가져올 사용하는 경우 HTTP를 방법 '은 DELETE'
- 17. MySQL 업데이트와 INSERT 및 DELETE
- 18. Ajax delete help
- 19. Entity에 Linq : 내가 사용해야하는 속성이 무엇인지 ID가 필요하지 않은 경우
- 20. 제목 ID가 동일하지 않은 경우 모든 메시지를 선택하십시오.
- 21. NHibernate에 : 병합 사용시 어린이 복합 ID가 갱신되지 않은 경우()
- 22. 월별 ID가
- 23. jQuery ID가
- 24. wxpython ID가
- 25. 검사기 ID가
- 26. delete [] 및 메모리 누수
- 27. Facebook ID가 그룹 ID입니까?
- 28. 자식 요소의 반복 ID가
- 29. C++ delete reference
- 30. 목록에있는 항목 수의 사전 구성
누구든지이 벤치 마크 대 1 대 1 삭제를 벤치마킹 했습니까? – jayarjo
@jayarjo : 어떤 차이라도 상당히 무시할 수있을 것입니다. 그리고 어쨌든 하나 하나의 삭제가 더 효율적 일 것이라고 생각하지 않습니다. –
성능이 편리 할 수도 있습니다. 예를 들어, 이미 하나씩 차례대로 처리하는 기능이 있습니다. 그러나 성능 향상의 기회가 있다면 추가 코드를 작성할 수 있습니다. 그렇지 않으면 아마도 가치가 없을 것입니다. – jayarjo