INSERT INTO [Relation]([CustomerId],[UserId],[CreateDate]) SELECT [Id],1,GETDATE() FROM [Customers]
现在Customers表有20多万条数据,也就是说这条语句要一次性往Relation表插入20多万条数据,要执行好长一段时间。请问有其他更好的办法实现相同的效果吗???
我刚放到SQL Server里面执行,而且测试数据库只有136577条,用了4分16秒。
试试 SELECT INTO
SELECT INTO貌似会创建一个新表。我是想插入现有的表。
@彪悍人生...: [Relation]这张表的聚集索引用的是什么
@dudu:
一个自增长的主键Id
@彪悍人生...: 去掉这个聚集索引试试
@dudu:
那不是得去除Id的主键?但是我现在不能动他的表结构。。
@彪悍人生...: 不是去主键,只是去聚集索引,其他都不动
@dudu:
我在Id上建立主键,他自动会给我在Id上建立聚集索引,取消聚集索引还得取消Id的主键。