SQL错误:不明确的列名称

时间:2017-10-08 01:28:53

标签: sql mysqli dbvisualizer

我遇到了执行sql的麻烦 任何时候我执行它给我一个错误模糊列名称' salesYTD' 我的陈述是:

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; 

该列的名称是正确的。我不明白我做错了什么。谢谢你的帮助

2 个答案:

答案 0 :(得分: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; 

我只是猜测列的来源。

答案 1 :(得分:0)

该列是否存在于多个表中?

如果是这样,您应该将字段命名为:

SP.salesYTD

ST.salesYTD

取决于您想要展示的内容。

祝你好运。