我有一个超过10 ^ 7行的MyISAM表.向其添加数据时,我必须在最后更新~10行.删除它们然后插入新的更快,还是更新这些行更快?应更新的数据不是索引的一部分.那么索引/数据碎片怎么样?
Qua*_*noi 21
UPDATE 远远快得多.
当你UPDATE,表记录刚刚用新数据重写.
当你DELETE,索引应该更新(记住,你删除整行,而不仅仅是你需要修改的列)和数据块可能会被移动(如果你达到了PCTFREE限制)
所有这些必须再次完成INSERT.
这就是你应该经常使用的原因
INSERT ... ON DUPLICATE KEY UPDATE
Run Code Online (Sandbox Code Playgroud)
而不是REPLACE.
前者是UPDATE密钥违规时的操作,后者是DELETE/ INSERT.
| 归档时间: |
|
| 查看次数: |
12527 次 |
| 最近记录: |