我有这个,它工作正常,但需要13分钟才能完成,有没有办法加快速度。
insert into openquery(portal, 'select
klient_id,
smetka_br,
smetka_datum,
smetka_izdadena_datum,
smetka_platena_datum,
smetka_int_cena,
smetka_tv_cena,
smetka_dtv_cena,
mesto_uplata,
platena_tv,
platena_int,
platena_dtv,
datum_tv,
datum_int,
datum_dtv from smetki_data_temp')
select
a.klient_id, a.barcode, a.datum_valuta, a.promena_datum, b.datum_uplata, a.iznos_INT, a.iznos_KDS, a.iznos_DTV, a.zabeleska,
a.platena_KDS, a.platena_INT, a.platena_DTV,
(Cast(godina_KDS as VARCHAR) + '-' + Cast(mesec_KDS as VARCHAR) + '-01') as datum_tv,
(Cast(godina_INT as VARCHAR) + '-' + Cast(mesec_INT as VARCHAR) + '-01') as datum_int,
(Cast(godina_DTV as VARCHAR) + '-' + Cast(mesec_DTV as VARCHAR) + '-01') as datum_dtv
from tSmetki as a
INNER JOIN tUplati as b on b.smetka_id = a.id
where a.barcode != ''
有近2密耳的行。选择需要30秒才能完成。插入需要12分钟。
Affected rows: 1905280
Time: 751.330s
答案 0 :(得分:0)
如@Dan Bracuk所述,使用INSERT更新200万行构建索引并检查约束,这可能(并且确实)减慢很多。 我的建议,只是为了确保策略是正确的,制作一个
的脚本作为第一步,不要篡改约束,也不要触摸其他任何东西。查看是否有执行时间改进。希望这会有所帮助。