Joindre des tables à partir de différentes bases de données
Les opérations de jointure SQL peuvent-elles être effectuées sur des tables de différentes bases de données ? Si oui, comment y parvenir ?
Réponse :
Oui, SQL Server permet la jointure de tables provenant de bases de données distinctes résidant sur le même serveur. La procédure de jointure modifiée est la suivante :
Qualification complète du nom de table :
Dans les jointures inter-bases de données, il est essentiel de qualifier complètement les noms de table en spécifiant à la fois le nom de la base de données et le schéma de la table (le cas échéant). Cela garantit que SQL Server peut identifier sans équivoque les tables jointes.
Exemple :
Considérons deux bases de données sur le même serveur : Db1 et Db2. Db1 contient une table "Clients" avec une colonne "ClientId", tandis que Db2 a une table "Messages" avec une colonne "ClientId".
Join Query :
select * from Db1.dbo.Clients c join Db2.dbo.Messages m on c.ClientId = m.ClientId
Dans cette requête, le schéma "dbo" est explicitement spécifié pour les deux tables, car c'est le schéma par défaut dans Serveur SQL. En qualifiant les noms de tables avec leurs noms de bases de données respectifs, l'opération de jointure peut réussir à lier des tables de différentes bases de données.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!