sql >> Database >  >> RDS >> Sqlserver

SQL-query op meerdere databases

Ik denk dat het probleem met duplicaten niet een kwestie is van het lid worden van de twee databases, maar eerder van je join in de eerste plaats. Ik denk dat je een INNER- of OUTER-join nodig hebt om de koppeling af te handelen. Wat betreft het ophalen van gegevens uit twee verschillende databases, is de syntaxis vrij eenvoudig. Je voegt gewoon de servernaam toe, punt de databasenaam, punt de naam van de eigenaar, punt de tabelnaam.

Bijvoorbeeld:

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

In uw voorbeeld klinkt het alsof u de link aan het werk krijgt, maar u hebt een probleem met de verbinding in het veld repair_ord. Hoewel ik je schema niet ken, vermoed ik dat deze link een INNER JOIN zou moeten zijn. Als je gewoon beide tabellen toevoegt aan het FROM-statement en je doet je WHERE-statement niet goed, dan krijg je problemen zoals je beschrijft.

Ik zou willen voorstellen dat u deze installatie vereenvoudigt en in een testomgeving plaatst (op één DB). Probeer de four-table join totdat je het goed hebt. Voeg vervolgens de complexiteit van multi-database-aanroepen toe.



  1. Oracle TO_DATE werkt niet

  2. Vergelijking van Oracle MySQL, Percona Server en MariaDB

  3. Wat levert een succesvolle MySQL DELETE op? Hoe te controleren of VERWIJDEREN succesvol was?

  4. Dropdown-opties voor Python-formulieren ingevuld door sql