【发布时间】:2014-09-19 18:58:11
【问题描述】:
我在这里看到了一些类似问题的主题,但是我找不到适合我需要的东西。
考虑下表和示例数据:
CREATE TABLE foo(a int, b int);
INSERT INTO FOO VALUES(1, 3);
INSERT INTO FOO VALUES(1, 3);
INSERT INTO FOO VALUES(1, 4);
INSERT INTO FOO VALUES(2, 5);
INSERT INTO FOO VALUES(2, 3);
INSERT INTO FOO VALUES(3, 10);
考虑这个查询:
SELECT a,
sum(b)
FROM foo
GROUP BY a;
它工作正常。我想更改该查询,使其仅匹配总和大于 9 的组。我的(失败)尝试是:
SELECT a,
SUM(b)
FROM foo
WHERE SUM(b) >9
GROUP BY a;
在 postgres 中正确的做法是什么?
【问题讨论】:
-
如果您想知道,我否决了这个问题。为了证明这个问题被问了很多,我在谷歌中粘贴了问题的确切标题。前两个结果与 StackOverflow 上的这个问题完全相同。因此,我认为这个问题虽然连贯且格式良好,但并没有显示出太多的研究工作。
-
公平点。否决票已接受。
标签: sql postgresql select aggregate-functions