sql - 在Oracle中将数据集分组到一行
问题描述
我有这个数据库
date val1 val2 val3 val4
29/07/20 null 12.11 null null
29/07/20 22.91 null null null
29/07/20 null null 15.18 null
29/07/20 null null null 85.72
如何将以前的数据集转换为这个数据集
date val1 val2 val3 val4
29/07/20 22.91 12.11 15.18 85.72
提前谢谢了 :)
解决方案
您可以使用聚合:
select date, max(val1), max(val2), max(val3), max(val4)
from t
group by date;
以我的经验,没有人以这种格式存储真实的表格。此类表通常是聚合查询的结果,这些查询在group by
. 您可能想问一个关于修复生成数据的查询的新问题。
推荐阅读
- docker - 在 docker 镜像中添加文件
- html - 为什么聚合物的铁选择器对我不起作用?
- linux - 从 Artifactory 安装 RPM 包
- c# - Global.asax.cs Application_Error 中的 MVC 自定义错误代码未按预期工作
- hibernate - 如何使用 springboot 2.1 和 java 8 编写请求 sql native?
- reactjs - 将徽标图像放入导航栏
- oh-my-zsh - 如何修复“oh-my-zsh plugin 'docker,' not found”
- ruby - RSpec:未创建会话:此版本的 ChromeDriver 仅支持 Chrome 版本 76
- javascript - 将对象作为状态使用 useState()
- c - Strtok_r 返回 NULL