在Microsoft SQL Server 2008上执行以下SQL查询时:
SELECT
[ACCOUNT]
,[Mailto]
,[Site_addr_1]
,[Site_addr_2]
,[Site_addr_3]
,[State_Class]
,[Map_Facet]
,[Key_Map]
,[Neighborhood_Code]
,[Neighborhood_Group]
,[Econ_Area]
,[Yr_Impr]
,[Acreage]
,[Prior_Total_Market_Value]
,[Land_Value]
,[Improvement_Value]
,[Extra_features_Value]
,[Total_Appraised_Value]
,[Total_Building_Area]
,[Econ_Bld_Class]
,[LAND_USE_CODE]
FROM [Pdata].[dbo].[Real_acct]
LEFT JOIN [Pdata].[dbo].[Land]
ON (Real_acct.ACCOUNT = LAND.ACCOUNT)
我收到以下错误:
Msg 209, Level 16, State 1, Line 1
Ambiguous column name 'ACCOUNT'.
答案 0 :(得分:4)
您正在进行连接,似乎两个表都有列ACCOUNT
,并且sql server不知道您是否希望来自ACCOUNT
或{{Real_acct
的列Land
1}}。
试试这个:
SELECT
Real_acct.ACCOUNT -- or Land.ACCOUNT
,Mailto
,Site_addr_1
,Site_addr_2
,Site_addr_3
,State_Class
,Map_Facet
,Key_Map
,Neighborhood_Code
,Neighborhood_Group
,Econ_Area
,Yr_Impr
,Acreage
,Prior_Total_Market_Value
,Land_Value
,Improvement_Value
,Extra_features_Value
,Total_Appraised_Value
,Total_Building_Area
,Econ_Bld_Class
,LAND_USE_CODE
FROM [Pdata].[dbo].[Real_acct]
LEFT JOIN [Pdata].[dbo].[Land]
ON (Real_acct.ACCOUNT = LAND.ACCOUNT)
答案 1 :(得分:0)
第一列......服务器不知道您是否需要Real_acct.ACCOUNT
或LAND.ACCOUNT
答案 2 :(得分:0)
@majidarif是完全正确的。 原因是两个表都有一个名为“Account”的列。 您需要指定要从中返回值的表。 即使它们是相同的,你也需要具体。