2017-10-08 13 views
0

私は、実行SQL とのトラブルに私が実行任意の時間を持って、それは私にエラーあいまいな列名を与える「salesYTD」 私の文は次のとおりです。SQLエラー:あいまいな列名

SELECT COUNTRYREGIONCODE, NAME, AVG(SALESQUOTA),AVG(BONUS), AVG(SALESYTD) 
FROM SALES.SALESPERSON SP 
INNER JOIN SALES.SALESTERRITORY ST 
ON SP.TERRITORYID = ST.TERRITORYID 
GROUP BY NAME, COUNTRYREGIONCODE; 

その列の名前が正しいです。私は何が間違っているのか分かりません。助けをありがとう

答えて

1

これは、SALESYTDが両方のテーブルにあることを意味します。私はあなたがほしいと思うか分からない。

クエリに複数のテーブルがある場合常には列名を修飾します。

SELECT ST.NAME, ST.COUNTRYREGIONCODE, 
     AVG(SP.SALESQUOTA), AVG(SP.BONUS), AVG(SP.SALESYTD) 
FROM SALES.SALESPERSON SP INNER JOIN 
    SALES.SALESTERRITORY ST 
    ON SP.TERRITORYID = ST.TERRITORYID 
GROUP BY ST.NAME, ST.COUNTRYREGIONCODE; 

私はちょうど列の出所を推測しています。

0

この列は複数のテーブルに存在しますか?

もしそうなら、あなたは次のようにフィールドに名前を付ける必要があります。

SP.salesYTD 

または表示したい内容に応じて

ST.salesYTD 

幸運。

+1

これは今動作します:)ありがとう – Ana

関連する問題