在 SQL Server 中连接来自不同数据库的表
在 SQL Server 中,只要它们驻留在不同数据库中,就可以连接来自不同数据库的表在同一台服务器上。此功能使数据库开发人员和分析师能够跨不同模式链接数据。
语法
连接不同数据库中的表的语法与连接不同数据库中的表的语法类似。相同的数据库。但是,表名称必须是完全限定的,并指定数据库名称和架构(如果适用):
SELECT * FROM Db1.Schema1.Table1 AS t1 JOIN Db2.Schema2.Table2 AS t2 ON t1.ColumnA = t2.ColumnB
示例
假设您有两个数据库、“Db1”和“Db2”,位于同一服务器上。 “Db1”包含一个名为“Clients”的表,其中包含“ClientId”列,“Db2”包含一个名为“Messages”的表,其中包含“ClientId”列。这些表通过“ClientId”列共享关系。
要在这些表之间执行联接,您可以使用以下查询:
SELECT * FROM Db1.dbo.Clients AS c JOIN Db2.dbo.Messages AS m ON c.ClientId = m.ClientId
此查询将从“Clients”和“Messages”表,其中“ClientId”列在两个表中都匹配。本示例中假定使用“dbo”架构,但如果您的表位于不同的架构中,则应指定适当的架构。
以上是如何在 SQL Server 中连接不同数据库的表?的详细内容。更多信息请关注PHP中文网其他相关文章!