[英]Error Code: 1052. Column 'ATTRIBUTE' in field list is ambiguous
当我尝试运行波纹管部分时,我收到以下错误消息。 我对 SQL 还是新手,所以我猜这个问题相对简单,让你们专家有点畏缩。 无论如何,非常感谢任何回复的人。
SELECT DRINKER, COUNT(RATING)
FROM DRINKERS LEFT JOIN LIKES
ON LIKES.DRINKER = DRINKERS.DRINKER
WHERE LIKES.RATING < 0
GROUP BY LIKES.DRINK
ORDER BY DRINK ASC;
我得到错误:
19:17:07 SELECT DRINKER, COUNT(RATING) FROM DRINKERS LEFT JOIN LIKES ON LIKES.DRINKER = DRINKERS.DRINKER WHERLIKES.RATING < 0 GROUP BY LIKES.DRINK ORDER BY DRINK ASC LIMIT 0, 1000
错误代码:1052。字段列表中的“DRINKER”列不明确 0.00031 秒
非常感谢您的帮助!
您应该限定所有列引用。 因为您使用的是LEFT JOIN
,所以我猜您希望所有饮酒者都返回。 您的WHERE
子句将结果集限制为只有那些评分为负的饮酒者。
如果您想要所有饮酒者,则该条件需要移至ON
子句。 我还推荐表别名:
SELECT D.DRINKER, COUNT(L.RATING)
FROM DRINKERS D LEFT JOIN
LIKES L
ON L.DRINKER = D.DRINKER AND
L.RATING < 0
GROUP BY D.DRINKER
ORDER BY D.DRINKER ASC;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.