【问题标题】:Check a count Function in Where在 Where 中检查计数功能
【发布时间】:2017-11-03 08:12:52
【问题描述】:

我对 PostgreSQL 中的计数函数有疑问 所以如果我有这个查询

SELECT dept_id, COUNT(*) AS total
FROM employees
WHERE salary > 50000
GROUP BY dept_id;

并且我想检查 Total > 2. 我试着写:

Where Total > 2

Where Count (*) > 2 

但这是错误的,有人可以帮我吗?谢谢

【问题讨论】:

  • 必须使用having子句

标签: sql postgresql count where


【解决方案1】:

HAVING 子句已添加到 SQL,因为 WHERE 关键字不能与聚合函数一起使用。 所以,那么你应该使用HAVING 子句。

SELECT dept_id, COUNT(*) AS total
FROM employees
WHERE salary > 50000
GROUP BY dept_id
HAVING count(*) > 2;

【讨论】:

  • 您应该提及何时使用HAVING 而不是WHERE
  • @Harlekuin 是的,这是一个糟糕的答案。我已经添加了何时使用 HAVING。 Ty 给小费。
  • 谢谢它真的很有帮助,
猜你喜欢
  • 1970-01-01
  • 2019-07-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-02-06
  • 1970-01-01
相关资源
最近更新 更多