SQL Server-带联接的Oracle链接服务器
情况如下: 主数据库服务器:SQL Server 2008 R2,带有与Oracle 11g链接的服务器 我有一个存储过程,可以进行如下查询:SQL Server-带联接的Oracle链接服务器,oracle,sql-server-2008,join,linked-server,openquery,Oracle,Sql Server 2008,Join,Linked Server,Openquery,情况如下: 主数据库服务器:SQL Server 2008 R2,带有与Oracle 11g链接的服务器 我有一个存储过程,可以进行如下查询: Select t1.a, t1.b, t2.c, t3.d From LocalTable a inner join LinkedServerName..Schema.Tableb b on a.aNumber= b.id inner join LinkedServerName..Schema.Tablec c on b.value = c.i
Select t1.a, t1.b, t2.c, t3.d
From LocalTable a inner join LinkedServerName..Schema.Tableb b on a.aNumber= b.id
inner join LinkedServerName..Schema.Tablec c on b.value = c.id
inner join LinkedServerName..Schema.Tabled d on a.someOtherNumber = d.Id
Where a.WhereValue1 = @Parameter1
and b.WhereValue2 = @Parameter2
这变得非常缓慢。我不知道如何使用OpenQuery来改进查询,因为Where子句使用参数(如果可以使用的话)
有没有改进数据检索的方法?我正在从Oracle数据库中检索数百万条记录
非常感谢。我建议您至少在Oracle端创建一个视图,连接表b、c、d并连接到该视图。LocalTable中有多少条记录?如果数量很少(低于10000个左右),那么最好在Oracle方面加入整个团队 你的总体目标是什么?您是在构建报告还是试图识别不同的记录以便合并数据?您能够在oracle端进行更改吗