insert into mdb..tbnv (counter_sno,in_no,trn_date,curr_no,item_no,account_no,trn_amt)select isnull(counter_sno,true_sno),isnull(in_no,0),'20061206',isnull(curr_no,0),isnull(item_no,0),isnull(account_no,0) from (select * from sqlsrv.tbAc.dbo.tblsz_ht06 where trn_date = '20061206') a right join (select distinct(true_sno) from sqlsrv.tbJD.dbo.tbocrresult where trn_date='20061206'and packfile = '2006120601' and len(true_sno)=12) b on counter_sno = true_sno
其中mdb..tbnv 是用设置远程服务器的Access表,所有字段都不允许为空也没有默认值,sqlsrv.tbAc.dbo.tblsz_ht06和sqlsrv.tbJD.dbo.tbocrresult 都是另外服务器上的SQLServer表,其中记录数在300万左右,现在运行需要大概2分半时间,希望大家帮帮忙看看是否能把时间缩短到1分钟啊,其中表的索引我都已经加了不用考虑了,主要看看这句话什么地方还能优化的,谢谢大家
其中mdb..tbnv 是用设置远程服务器的Access表,所有字段都不允许为空也没有默认值,sqlsrv.tbAc.dbo.tblsz_ht06和sqlsrv.tbJD.dbo.tbocrresult 都是另外服务器上的SQLServer表,其中记录数在300万左右,现在运行需要大概2分半时间,希望大家帮帮忙看看是否能把时间缩短到1分钟啊,其中表的索引我都已经加了不用考虑了,主要看看这句话什么地方还能优化的,谢谢大家
解决方案 »
- 使用idtcpserver作为服务端接收请求,为什么首次处理的速度很慢.有无好的解决方案?
- 如何将delphi的整个form保存为图像?包含下拉条隐藏的部分。
- 关于利用imgedit系列控件控制扫描仪:如何得到当前扫描仪还有几页没有扫苗?共有几页?
- 大家来看一下。timer运行过程中,内存会一直增加。真的?
- 技术问题!
- 高手帮解决以下的问题再加100分,这是第二个贴了
- 如何不通过ODBC,用ado连接到pardox表?提供思路也给分!
- 100分急求关于一个Email地址验证组件问题
- 请教关于QReport的打印的问题?!!
- 条件限定软件加密
- 救命!关于RAVE5的问题 !
- 关于应付款问题,请各位大侠帮忙,谢谢!~
简单的把你的代码改成这种伪代码
insert into tablename(c_name1,cname2,cname3...cname_N)第一部分
select c_name1,cname2,cname3...cname_N from 第二部分
一个由关联查询得到的新结果集合 第三部分但如果不改表结构以及索引这些硬性的东西,单纯依靠从语句的修改来提升性能,那么唯一可以改的就是语句中的第三部分,即关联查询的那一部分,不了解的表,但要改,以就是根据你的表结构看看关联查询部分的性能提升
将select * 换成select 字段列表