我正在尝试从两个不同的链接服务器访问表。基本上从一台服务器我得到了id的列表,从另一台链接的服务器,我需要得到另外两个id匹配的列。
我试图从一台服务器获取id并首先在excel中填充它。在此之后,我从其他服务器获取了所有数据并编写了一个vb宏来选择匹配的行。这实际上需要花费很多时间,并且在mos时代,excel会挂起,因为实际上有很多内容需要比较。对此有一个非常简单的解决方案吗?
我正在尝试类似下面的内容,但面临问题以获得结果。
select * from openquery([server1],
'select schema1.table1.col1, schema1.table1.col2 from schema1.table1 where schema1.table1.col1 exists
(select * from openquery([server2],'select schema2.table2.col1 from schema2.table2')')
任何帮助都将受到高度赞赏。
提前多多感谢。
答案 0 :(得分:0)
我实际上只是把它放在一起来查询本地表和1个链接的db表。 Intellisense可能不喜欢链接服务器表,但确实有效:
Select GlobalEntityID, LicenseNumber, IssueDate, ExpireDate, BusinessLicenseClosedDate, bl.Issued, bl.Expire, bl.Cease
From COLICENSECERTIFICATION lic
Inner Join
[LinkedServer].[DB].[schema].[blAttribs] bl on lic.LICENSENUMBER = bl.Account_key
Order by LicenseNumber;
go
您可以在其中放置'Where'子句以匹配任何其他条件,或者添加另一个Inner Join以将另一个链接服务器表添加到查询中。