如何在不使用数据库别名的情况下从不同数据库查询表?

che*_*539 3 sql sql-server sql-server-2008

我正在从两个数据库表中检索数据的任务,我包括以下查询来实现它.

在存储过程中查询:

--Some query here...
LEFT OUTER JOIN     aaa c 
ON                  l.IDNo      = c.LogonIDNo
INNER JOIN          Data_00.dbo.yyy A
ON                  C.MacCusNo  = A.Cus_no
LEFT OUTER JOIN     abc T 
ON                  A.xyz       = T.bbb
Run Code Online (Sandbox Code Playgroud)

表格:

aaa : table of database Data_01
yyy : table of database Data_00
Run Code Online (Sandbox Code Playgroud)

有没有办法从两个数据库表中检索数据而不使用'Data_00.dbo.yyy'我只想使用yyy而不是它.

wee*_*oid 9

我假设您正在使用SQL Server.

是的,您可以创建同义词.同义词允许您指定用于访问各种数据库对象的简写名称,无论它们是否与同义词规则位于同一数据库中.

USE Data_01;

CREATE SYNONYM yyy FOR Data_00.dbo.yyy;
Run Code Online (Sandbox Code Playgroud)