sql 分组后按时间降序排列再取出每组的第一条记录

简介: 原文:sql 分组后按时间降序排列再取出每组的第一条记录 竞价记录表: Aid 为竞拍车辆ID,uid为参与竞价人员ID,BidTime为参与竞拍时间 查询出表中某人参与的所有车辆的最新的一条的竞价记录 ...
原文: sql 分组后按时间降序排列再取出每组的第一条记录

竞价记录表: Aid 为竞拍车辆ID,uid为参与竞价人员ID,BidTime为参与竞拍时间


查询出表中某人参与的所有车辆的最新的一条的竞价记录


思路:通过aid分组,通过时间做降序排列,给每组数据加上行号(rowId)然后取出行号为1的数据,就是所要查询的数据


源数据:

select * from auto_AuctionRecords



执行查询后的数据:

 select * from (select ROW_NUMBER()over(partition by Aid order by BidTime desc) rowId,* 
       from auto_AuctionRecords where Uid=353) as AuctionRecords 
       where rowId=1
先按aid分组,在按时间降序排列然后给每组设置编号,在查出每组的第一条数据也就是rowID等于1的



注解:partition by用于给结果集分组


目录
相关文章
|
4月前
|
SQL
sql server模糊查询、分组
sql server模糊查询、分组
|
4月前
|
SQL 大数据 HIVE
每天一道大厂SQL题【Day10】电商分组TopK实战
每天一道大厂SQL题【Day10】电商分组TopK实战
61 0
|
2月前
|
SQL 数据挖掘 数据库
SQL分组函数
【7月更文挑战第24天】SQL分组函数
20 1
|
1月前
|
SQL
SQL SERVER数据分组后取第一条数据——PARTITION BY
SQL SERVER数据分组后取第一条数据——PARTITION BY
64 0
|
2月前
|
SQL 数据库
【SQL】已解决:SQL分组去重并合并相同数据
【SQL】已解决:SQL分组去重并合并相同数据
55 1
|
3月前
|
SQL
sql语句按指定某个字段分组后删除重复数据只保留id最小/最大的一条数据
sql语句按指定某个字段分组后删除重复数据只保留id最小/最大的一条数据
64 0
|
4月前
|
SQL 关系型数据库 MySQL
简简单单 My SQL 学习笔记(2)——分组和简单数据的查询
简简单单 My SQL 学习笔记(2)——分组和简单数据的查询
|
4月前
|
SQL HIVE
【Hive SQL 每日一题】分组排名取值
创建了一个名为`sales_data`的测试表,包含商品ID、销售额和销售日期。展示了部分示例数据。接着,提供了三个SQL查询:1) 查找每个商品销售额最高的记录;2) 获取每个商品最近和最远的销售记录;3) 求每个商品距今第二近的销售记录。每个查询都利用了窗口函数来处理数据,并给出了相应的查询结果图。
|
3月前
|
SQL 关系型数据库 MySQL
MySQL数据库——SQL(3)-DQL(基本查询、条件查询、聚合函数、分组查询、排序查询、分页查询、案例练习)
MySQL数据库——SQL(3)-DQL(基本查询、条件查询、聚合函数、分组查询、排序查询、分页查询、案例练习)
47 0
|
3月前
|
SQL 数据库
数据库sql语句分组
在SQL中,`GROUP BY`语句用于将多行数据根据一个或多个列进行分组,以便可以对每个分组执行聚合函数,如计数、求和、求平均等。以下是一些基本的SQL分组示例。 1. **基本分组**