https://www.mssqltips.com/sqlservertip/6445/azure-sql-cross-database-query/
-- protects private keys
CREATE MASTER KEY; -- create master key
GO
-- credential maps to a login or contained user used to connect to remote database
CREATE DATABASE SCOPED CREDENTIAL CrossDbCred -- credential name
WITH IDENTITY = 'CrossDb', -- login or contained user name
SECRET = 'Str0ngP@ssword'; -- login or contained user password
GO
-- data source to remote Azure SQL Database server and database
CREATE EXTERNAL DATA SOURCE JapaneseCars
WITH
(
TYPE=RDBMS, -- data source type
LOCATION='server.database.windows.net', -- Azure SQL Database server name
DATABASE_NAME='JapaneseCars', -- database name
CREDENTIAL=CrossDbCred -- credential used to connect to server / database
);
GO
-- external table points to table in an external database with the identical structure
CREATE EXTERNAL TABLE [dbo].[JapaneseCars_Vehicles]
(
[Year] [varchar](4),
[Make] [varchar](20),
[Model] [varchar](20)
)
WITH (DATA_SOURCE = [JapaneseCars], -- data source
SCHEMA_NAME = 'dbo', -- external table schema
OBJECT_NAME = 'Vehicles' -- name of table in external database
);
GO
-- test
SELECT [Year]
, [Make]
, [Model]
FROM [dbo].[Vehicles]
UNION ALL
SELECT [Year]
, [Make]
, [Model]
FROM [dbo].[JapaneseCars_Vehicles] -- external table name
GO