sql >> Base de Datos >  >> RDS >> Sqlserver

Consulta SQL en múltiples bases de datos

Creo que el problema de los duplicados no se trata de unir las dos bases de datos, sino más bien de su unión en primer lugar. Creo que es posible que necesite una unión INTERNA o EXTERNA para manejar la vinculación. En cuanto a obtener datos de dos bases de datos diferentes, la sintaxis es bastante simple. Simplemente agrega el nombre del servidor, el nombre de la base de datos, el nombre del propietario, el nombre de la tabla.

Por ejemplo:

SELECT firstdb.*, seconddb.*
FROM Server1.Database1.dbo.myTable AS firstdb
INNER JOIN Server2.Database2.dbo.myTable AS seconddb
   ON firstdb.id = seconddb.id

En su ejemplo, parece que está haciendo que el enlace funcione, pero tiene un problema de unión en el campo repair_ord. Si bien no conozco su esquema, supongo que este enlace debería ser un INNER JOIN. Si solo agrega ambas tablas en la declaración FROM y no hace su declaración WHERE correctamente, tendrá problemas como los que está describiendo.

Le sugiero que simplifique esta configuración y la coloque en un entorno de prueba (en una base de datos). Pruebe la combinación de cuatro tablas hasta que lo haga bien. Luego agregue las complejidades de las llamadas de varias bases de datos.