sql - MSSQL - 如何根据最大 ID 选择多个列

标签 sql sql-server tsql

enter image description here

结果必须是对于不同的 car_id 我想选择 max(exActId)driver_idcontract_id必须根据max(exActId)carId来选择。

结果必须是这样的

enter image description here

我怎样才能做到这一点?

最佳答案

您可以使用 row_number() 执行此操作,尽管使用相关子查询通常效率更高:

select t.*
from t
where t.exActId = (select max(t2.exActId) from t t2 where t2.carId = t.carId);

关于sql - MSSQL - 如何根据最大 ID 选择多个列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49528318/

相关文章:

sql - 执行 GROUP BY 时插入缺失的条目?

sql-server - MS Access 2007 查询不在 SQL Server 2008 上运行

sql-server - 在 SQL 中仅选择唯一的连续行

MySQL 获取连接表上的差异 - 股票交易/库存系统

mysql - 父级提升 SQL 的总和

sql - 添加时间间隔并跳过一定时期

sql - 是否值得将主键从 NVARCHAR 类型切换到 INT 类型?

mysql - 将 MySQL 转储文件恢复到数据库中

java.lang.ClassNotFoundException : com/microsoft/sqlserver/jdbc/SQLServerDriver

sql-server - 从链接服务器的默认目录中选择