从另一个表中插入数百万行

时间:2011-05-11 00:40:45

标签: sql bigdata

更快捷地从select语句向表中插入行并插入?

Insert into PartyMain
Select [PermID]
      ,[IsOptOut]
      ,[UpdatedOn]
      ,[FK_DataSource]
 From PartyMain

以6M行为准> 4分钟

2 个答案:

答案 0 :(得分:1)

通过select插入是我能想到的插入数据的最快方法。但是,您可以在应用程序工作流程中进行改进。

我想在应用程序中有一些按钮可以启动过程。当用户告诉应用程序(我做出这个假设)时,您是否可以拥有一个每隔X秒执行一次转移的进程,而不是执行插入操作?或者每隔X秒检查一次,如果要传输的行数大于Y,则运行传输...换句话说,不要等到有600万行。

编辑 - 其他选项可能是database triggers

答案 1 :(得分:0)

你对PartyMain有任何索引吗?如果是,您可能想要

  1. 删除索引
  2. 插入行
  3. 重新创建索引
  4. 可能会提高效果。

    另外 - 你确定你从PartyMain读到并插入PartyMain吗?