sql - SQL 在具有最大值的表中查找值(结果必须是可编辑的)
问题描述
所以我坚持这个,似乎是一个简单的问题。
我有一张包含一些信息的表格
ID | 其他身份证 |
---|---|
1 | 100 |
2 | 214 |
1 | 1156 |
3 | 1252 |
4 | |
1 | 240 |
我现在只想要可编辑查询中具有最高值的行,例如:
| ID | Other ID |
| -------- | -------------- |
| 2 | 214 |
| 1 | 1156 |
| 3 | 1252 |
| 4 | |
但它必须是可编辑的,所以我可以更改此表中的一些其他值。
我试图创建一个查询,其中所有 Max(Date)、ID 都在,并将它们与 JOIN 结合起来。但这使得查询不可编辑
我希望我能很好地描述我的问题以理解......谢谢:D
解决方案
最简单的方法是使用row_number()
:
select t.*
from (select t.*,
row_number() over (partition by id
order by otherid desc
) as seqnum
from t
) t
where seqnum = 1;
令人高兴的是,NULL
出于排序目的,SQL 将值视为小于任何其他值,因此降序order by
将它们放在最后。
推荐阅读
- javascript - 使用 Jquery 或 Vanilla Js 自定义 CSS 步进器的问题
- gephi - gephi中2个节点之间的所有可能路径
- python - 通过 DRF 视图和序列化程序传递时,ManyToManyField 被过滤排除
- java - Dijkstra 的算法可以适用于旅行商问题吗?
- javascript - React-redux:无法使用连接将商店作为道具获取,无法读取未定义错误的属性“道具”
- android - 如何查找使用 LogCat 调用的“Ussd”号码
- xamarin - 蓝牙 LE 不检测设备
- ms-access - MS Access 2016 VBA 导致“输入参数值”窗口
- r - 在带有 rvest 的 R 中使用 Sys.sleep() 时的建议
- python - 在python中的函数括号(带有参数)内使用'='是什么意思?