【问题标题】:How to count a group by function?如何按功能计算一个组?
【发布时间】:2017-11-03 09:59:04
【问题描述】:

我正在尝试使用 group 函数计算表中的所有列。 我尝试的是:

SELECT count(*) from persdat group by zulage > 0;

打印出来的:

   count
  -------
    3
    5

这是表格本身:

 pname      Zulage
--------------------
 Eifer      1200.00
 Meyer      0.00
 Strom      90.00
 Luft       250.00
 Meieris    NULL
 Volt       1500.00
 Bind       900.00
 Meier      NULL

意思是它计算所有 0 以及高于 0 的所有内容。我希望它只显示高于 0 的内容。 提前感谢您的帮助!

【问题讨论】:

  • 添加一些示例表数据和预期结果。 (请格式化文本,而不是图像。)
  • 提示:WHERE 子句。

标签: mysql sql group-by count


【解决方案1】:

这应该可行。

SELECT count(*) from persdat WHERE zulage > 0;

【讨论】:

    【解决方案2】:

    你似乎想要:

    select count(*)
    from persdat
    where zulage > 0;
    

    在 MySQL 中,表达式 zulage > 0 是一个被计算为数字的布尔值。如果你运行:

    select (zulage > 0), count(*)
    from persdat
    group (zulage > 0);
    

    然后你会看到你的查询发生了什么。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-22
      • 2021-02-17
      • 1970-01-01
      • 2021-05-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多