首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过在列值的特定匹配字符串上应用group来获得结果的SQL是什么?

通过在列值的特定匹配字符串上应用group来获得结果的SQL是什么?
EN

Stack Overflow用户
提问于 2019-11-11 10:15:21
回答 1查看 28关注 0票数 0

通过在列值的特定匹配字符串上应用组来获得结果的SQL是什么?

表:结果(这不是物理表,而是特定查询的结果)

代码语言:javascript
复制
rname count1 count2
Avg-1  2      2
Avg-1  1      1
Avg-2  2      2
Avg-1  1      1
Zen-3  2      2
Zen/D  2      1
QA/C   3      1
QA/D   2      1

预期的输出是:

代码语言:javascript
复制
rname  count1 count2
Avg      6      6
Zen      4      3
QA       5      2

在预期输出中,count1是所有count1 of rname的总和,分别与字符串'Avg‘、'Zen''QA'匹配。count2也一样。

您能给我一些说明吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-11-11 10:20:49

demo:db<>fiddle

代码语言:javascript
复制
SELECT
    (regexp_split_to_array(rname,'[-/]'))[1],
    SUM(count1) AS count1,
    SUM(count2) AS count2
FROM
    mytable
GROUP BY 1

  1. regexp_split_to_array(rname,'[-/]')-/字符处拆分rname值。第一部分([1])给出了这个结果的AvgZenAvg(使用列索引1)
  2. SUM向上的值

)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58799426

复制
相关文章

相似问题

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