sql - 如何根据特定文本对列进行分组并使用 ORACLE 数据库对它们进行汇总
问题描述
我是甲骨文的新手。尝试根据特定文本对列进行分组并对其他列求和。
假设我有下表
我想按所有姓氏的人分组。像下面
我不知道我应该如何进行。注意:可能有多个名称,但我只想过滤 Sharma、Decosta 和 Liver。
更新问题。抱歉更新问题。但在实际场景中,搜索字符串并不总是最后。
输出。
解决方案
您可以使用regexp_substr()
:
select regexp_substr(name, '[^ ]+$') as last_name, sum(num_beers)
from t
group by regexp_substr(name, '[^ ]+$');
推荐阅读
- go - 如何通过使用 gocelery 模块设置 ETA 来安排任务?
- reactjs - 并行解决多个获取请求
- javascript - 我是否误解了继承概念?
- node.js - node.js axios & http ,有什么办法可以绕过速率限制吗?
- javascript - SCRIPT1006:在 IE 中应为 ')'(没有其他浏览器)
- java - 如何对 Springboot API 进行端到端测试?
- javascript - React Pixi 响应阶段
- vb.net - 如何在 For 循环中增加变量的名称,例如 bar1、bar2、bar3、VBNET?
- python - 如何创建具有共享权重的两个层,其中一个是另一个的转置?
- wordpress - 站点问题调试设置为 true