【发布时间】:2011-08-17 23:21:06
【问题描述】:
我不确定为什么这不起作用:
SELECT u.id, u.tag, u.unit_type, Count(p.id) AS num_points
FROM ot2.unit u
INNER JOIN ot2.point p on p.unit_id = u.id
GROUP BY u.id
HAVING Count(p.id) > 800;
错误:列“u.tag”必须出现在 GROUP BY 子句中或在聚合函数中使用 SQL 状态:42803
我已经为 group by 提供了一个列。
【问题讨论】:
-
这不适用于所有 RDBMS except MySQL。错误信息告诉你所有你需要知道的!它不要求“列”。它会告诉您您需要的确切附加信息。您还需要整理
u.unit_type
标签: sql postgresql