这样子写: SELECT * FROM OPENQUERY([192.168.0.1],'SELECT * FROM [db].dbo.User_Func_List()') 没有问题。
这样子写:
SELECT a.*,b.*
FROM a,OPENQUERY([192.168.0.1],'SELECT * FROM [db].dbo.User_Func_List()') AS b
WHERE a.Id = b.Id
也没有问题。
但OPENQUERY不能传递参数。如果有参数,只能用
SET @sql = 'SELECT * FROM OPENQUERY([192.168.0.252],''SELECT * FROM [User].dbo.func_GetData(' + @myUserId + ')'')';
EXEC(@sql);
这种方式。(见如何给OPENQUERY传递参数 )
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/leftfist/archive/2010/05/20/5611337.aspx