只是想知道哪个更快:
DELETE FROM table_name WHERE X='1'
DELETE FROM table_name WHERE X='2'
DELETE FROM table_name WHERE X='3'
或
DELETE FROM table_name WHERE X IN ('1', '2', '3')
有什么想法、提示或引用资料可以阅读吗?
谢谢大家!
最佳答案
由于以下几个原因,单个删除会更快:
- 只需要一个计划 生成
- 只会进行一次交易 涉及(如果您正在使用它们)
- 如果您从代码中运行这些, 那么开销就更少了 ODBC 调用和网络流量
- 任何索引都需要 只刷新一次,不会刷新很多次。
关于sql-server - 哪个更快?多个 DELETE 语句或单个 DELETE 语句使用 "IN (' x', '' y')",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/401616/