我有一些数据的“版本控制”表,每个版本有 150 万行,结构是:
[ID] bigint,
[version] int,
[somecolumn] int,
[anothercolumn] int,
[thirdcolumn] tinyint
而且我经常需要将一个版本复制到另一个版本中,就像这个查询一样:
INSERT INTO myTable
(SELECT ID, version + 1, somecolumn, anothercolumn, thirdcolumn
FROM myTable
WHERE version = @version)
但问题是这执行起来很慢,比如每次操作超过 10 秒。使此操作像闪电一样快的最佳方法是什么?我已经尝试选择一个临时表并从那里合并,但这并没有更快..