SQL Bulk从一个表移动到另一个表

时间:2012-05-16 23:25:27

标签: sql database select insert

所以我需要帮助我正在做的一些SQL工作。我不是最好的SQL,我遇到了一个需要一些指导的问题。我想把一张桌子分成小桌子。那里有一些不属于我的行,我想移动它们。

这两个表将具有完全相同的列和架构。

我知道我可以这样做:

Insert into [table1]
Select * From [table2]

出现的问题是要移动100,000,000多行。这些100,000,000+的RowID不符合规定。否则我会有

Insert into [table1]
    Select * From [table2]
    Where RowID > x AND RowID <= x + y

并迭代直到所有行都被复制。

我知道有可以完成的循环,但到目前为止它们效率低下。我知道这将花费超过10分钟,而且很可能需要一些时间。我只需要一些指导。

我不习惯只使用SQL代码。如果有一个向导我可以使用Microsoft SQL Server Management Studio来做到这一点,我很擅长。我已经研究过BULK INSERT并且不完全理解,所以对此的解释会很好。

任何建议都将不胜感激。

1 个答案:

答案 0 :(得分:0)

您需要对表格进行分区 - 有一个introduction/tutorial

这是一项相当大的工作。