我已经看过所有有关如何在两个不同的SQL服务器上查询两个不同的表的引用,并且我了解如何实现它。但是,该命令似乎不适用于使用##
创建的临时表。
如果我在一台服务器上编写一个联接,并且引用了该服务器上的一个临时表,而另一台服务器上的一个临时表,则SQL Server会假定由于##
在命令中,因此它会自动查看本地服务器的tempdb
,而不是远程的。我现在也不能使用OPENROWSET
,因为该功能已被禁用,我必须获得批准才能将其重新打开。
所以我的问题是,有一种方法可以重新配置此命令,以识别要查看的tempdb
?
SELECT *
FROM (##mytemptable1 Demog
INNER JOIN MyServer.tempdb.dbo.##mytemptable2 PeakInfo ON (Demog.SAMPLE_NO = PeakInfo.SampleNum) AND (Demog.JOB_NO = PeakInfo.JobNum) )
ORDER BY PeakInfo.JobNum, PeakInfo.SampleNum, PeakInfo.Replicate ,PeakInfo.Reinjection ,PeakInfo.PeakNameCustSort
最佳答案
试试这个从链接服务器查询全局临时表
SELECT * FROM OPENQUERY(linkedServerName, 'SELECT * FROM ##temp')
关于sql-server - 查询链接服务器上的全局临时表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13693177/