通过在列值的特定匹配字符串上应用组来获得结果的SQL是什么?
表:结果(这不是物理表,而是特定查询的结果)
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预期的输出是:
rname count1 count2
Avg 6 6
Zen 4 3
QA 5 2在预期输出中,count1是所有count1 of rname的总和,分别与字符串'Avg‘、'Zen'和'QA'匹配。count2也一样。
您能给我一些说明吗?
发布于 2019-11-11 10:20:49
SELECT
(regexp_split_to_array(rname,'[-/]'))[1],
SUM(count1) AS count1,
SUM(count2) AS count2
FROM
mytable
GROUP BY 1regexp_split_to_array(rname,'[-/]')在-或/字符处拆分rname值。第一部分([1])给出了这个结果的Avg、Zen或Avg(使用列索引1)SUM向上的值)
https://stackoverflow.com/questions/58799426
复制相似问题