Search code examples
sqlsql-serverlinked-server

Joining tables from 2 different servers through linked server - SQL Server


I am finding it difficult to join 2 tables across 2 servers in SQL server.

I know i am able to do this through a linked server. On my server 1 it has server 2 in its linked server folder in SSMS.

Server 1 = S1 Server 2 = S2

How do i reference the tables for a linked server join. I have tried

SELECT *
FROM [S1].[db1].[dbo].[Order] T1
JOIN [S2].[db1].dbo.[Invoice] T2
ON T1.[OrderID] = T2.[InvoiceID]

All the table names and server names are correct and server 2 is in the linked server folder under 'S2' but when i run this it says S2 and its table are invalid object names.

Any help would be appreciated


Solution

  • You dont need to specify the local server on your query cause it's not a linked server. So change your query to:

    SELECT *
    FROM [db1].[dbo].[Order] T1
    JOIN [S2].[db1].dbo.[Invoice] T2
    ON T1.[OrderID] = T2.[InvoiceID]