首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于计数特定单词出现次数的聚合函数

用于计数特定单词出现次数的聚合函数
EN

Database Administration用户
提问于 2016-04-08 18:11:08
回答 1查看 561关注 0票数 0

我有一张桌子,在上面我通过陈述来表演一个小组。表中的一个列可以包含5个不同的单词中的一个(本质上是枚举类型)。是否有一种方法可以使用聚合来获取每个枚举的出现情况,但在新列中显示每个计数?

例如,给定表:

代码语言:javascript
复制
+---------+
|id | enum|
+---------+
| 1 | A   |
| 1 | B   |
| 1 | C   |
| 1 | A   |
+---------+

id分组之后,我想得到这样的信息:

代码语言:javascript
复制
+------------+---------+---------+
|id | a_count| b_count | c_count |
+------------+---------+---------+
| 1 |   2    |    1    |    1    |
+--------------------------------+
EN

回答 1

Database Administration用户

发布于 2016-04-08 18:13:47

当然,将3 SUMs的所需值转换为1,其他值转换为0。

代码语言:javascript
复制
select
  id,
  sum(case when enum = 'A' then 1 else 0 end) as a_count,
  sum(case when enum = 'B' then 1 else 0 end) as b_count,
  sum(case when enum = 'C' then 1 else 0 end) as c_count
from
  table
group by
  id
;
票数 2
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/134801

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档