sql - SQL - 聚合一些列并将 id 映射到特定列
问题描述
所以我有一个返回这个的查询。
现在我想创建一个查询来聚合它以获得这样的结果..
我尝试了聚合,但部分名称显示错误的值
select max(id), max(receipt_id), max(section_id), max(section_name) from t;
我如何映射 section_id 以返回其相应的 section_name?原来 max 返回最大值。如果是字符串,它返回最长的。
谢谢你。
解决方案
你可以试试这个:
select qry.*, tbl.section_name
from
tbl, (select max(id) id, max(receipt_id) receipt_id, max(section_id) section_id from tbl) qry
where tbl.section_id = qry.section_id
https://dbfiddle.uk/?rdbms=oracle_11.2&fiddle=feb3965fa96e1a2ac9194173e136cf09
推荐阅读
- nginx - Nginx 将参数添加到来自父参数的每个请求
- reactjs - 在刷新页面上,反应路由器状态显示旧状态
- vba - 将多个工作簿中的特定选项卡移动到单个工作簿中
- java - 实现 ArrayBlockingQueue 并在尾部和头部锁定的原因是什么?
- cordova - 在框架 7 v2 中单击按钮时页面重新加载
- performance - JMeter 非 GUI 测试执行
- xml - /../ 在 xpath 中是什么意思?
- java - Android arrayList 检索数据
- python-3.x - 屏幕闪烁与 matplotlib 滑块更新
- image - 如何使用 parcel-bundle 在 React 中导入图像