Eine einfache Möglichkeit eine spezielle Abfrage auf einem Remote-Server auszuführen, so kann man die Sprachmittel des Remote-Servers verwenden und das Ergebnis mit Daten des SQL-Servers verbinden.
begin transaction
INSERT INTO foo(id)
select id from openquery(mybatz,'select * from batz where n>12')
rollback transaction
Diese Funktion ist besonders nützlich, wenn man nicht genau weis, was der Remote-Server ist und man nur die Tabellen kennt. Normalerweise kann man auf einen Remoteserver einfacher zugreifen, es eicht ein:
Select * from remoteserver.datenbank.schema.tabelle
aber das klappt nicht immer, nicht jeder OLE-DB-Provider unterstützt das. So finde ich openquery einen brauchbaren Ersatz.