MySQL 分组依据和位置

标签 mysql group-by where-clause

我想在下面的 sql 中添加一个 where 子句,以便名为“howmany”的列仅显示大于 1 的结果,但是当我尝试时,我不断收到错误。

 select monthname(birthdate) as 'Month', Count(*) as howmany
 from tblBday
 group by month(birthdate)
 ;

最佳答案

这是因为你不能在 WHERE 子句中使用别名

此外,您不能在 WHERE 子句中执行聚合函数

你需要这样的东西

SELECT monthname(birthdate) as Month, Count(*) AS howmany
FROM tblBday
GROUP BY month(birthdate)
HAVING Count(*) > 1
 ;

Here's关于“拥有”的教程

关于MySQL 分组依据和位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13201298/

相关文章:

sql - Mysql 语句不适用于多个 AND 子句

c# - 如何使用动态构建的 lambda 表达式搜索动态对象 IEnumerable<dynamic>?

mysql - 分析 MySQL 数据库查询的执行时间?

sql - 查找具有相同 ID 并具有一组特定名称的行

haskell - Haskell 中 lambda 的位置

php - 如何使用 Group By 和 Group_Concat 进行 Sphinx 搜索?

sql - 在 Postgres 中使用 COALESCE 并按结果值分组

mysql - 谷歌云 sql 从第一代迁移到第二代,停机时间最少甚至没有

使用Ruby导入Mysql数据

mysql - 在 Openshift 上使用 Sequel 连接到 mysql