我尝试连接两个同名的表,但是在彼此不同的数据库上这样:
SELECT DB2.DBO.DICTIONARY.ID AS ID,
DB2.DBO.DICTIONARY.NAME AS NN,
DB1.DBO.DICTIONARY.NAME AS N
FROM DB2.DBO.DICTIONARY
INNER JOIN DB1.DBO.DICTIONARY AS DICT
ON DB2.DBO.DICTIONARY.ID = DICT.ID
但我一直收到错误:
多部分标识符" DB1.DBO.DICTIONARY.NAME"不可能 界。
我的目标是在ID
加入他们,但为NAME
列添加不同的别名。因为DB1.NAME
中的数据与DB2.NAME
中的数据不同。
答案 0 :(得分:0)
您已使用表DB1.DBO.DICTIONARY
的别名,因此您无法再使用相同的名称引用它。您必须使用别名DICT
来引用它:
SELECT
DB2.DBO.DICTIONARY.ID AS ID,
DB2.DBO.DICTIONARY.NAME AS NN,
DICT.NAME AS N
FROM DB2.DBO.DICTIONARY
INNER JOIN DB1.DBO.DICTIONARY AS DICT
ON DB2.DBO.DICTIONARY.ID = DICT.ID