我要实现的功能是统计订单日志表中每一个订单的前三条日志记录,表结构如下:

一个订单在定点杆日志表中有多条记录,要根据时间查询出每一个订单的前三条日志记录,sql如下:

 select b.OrderNumber,b.creationtime,b.remark  FROM (SELECT a.OrderNumber,a.CreationTime,a.Remark FROM [FortuneLabFord].[dbo].[SO_Log] awhere a.SysId   IN(select TOP 3 SysId  from [FortuneLabFord].[dbo].[SO_Log] where a.OrderNumber = SO_Log.OrderNumber ORDER BY a.CreationTime DESC)
) b
group BY b.OrderNumber,b.creationtime,b.remark
ORDER BY b.OrderNumber 

思路是:先在内层根据CreationTime做排序,然后再自关联一下本身的表,根据主键关联,然后对结果集做分组和排序,这样就能保证同一个订单的三条记录都排在一起

这种查询方法适用于表中有唯一性标识的字段,如果没有唯一性标识的字段就不能这么查了。

转载于:https://www.cnblogs.com/Wolfmanlq/p/5573562.html

SQL实现分组查询取前几条记录相关推荐

  1. mysql 分组排序取前n_mysql分组排序取前N条记录的最简洁的单条sql ! | 学步园

    -- mysql分组排序取前N条记录的最简洁的单条sql. use test; drop table if exists test; create table test ( id int primar ...

  2. [MySQL] 分组排序取前N条记录以及生成自动数字序列,类似group by后 limit

    前言:         同事的业务场景是,按照cid.author分组,再按照id倒叙,取出前2条记录出来.         oracle里面可以通过row_number() OVER (PARTIT ...

  3. Mysql 分组查询取max 那条记录其他字段

    需求描述: 现有有需求要按类型分组,查询出每一分组最近的一条记录,返回字段包含id,定时任务执行时间(start_time)和任务id(job_id). SELECT id, MAX(start_ti ...

  4. oracle 取前10条记录

    1.oracle 取前10条记录 1) select * from tbname where rownum < 11; 2) select * from (select * from tbnam ...

  5. SQL Server 2000查询n到m条记录

    SQL Server 2000查询n到m条记录? (1)select top m * from tablename where id not in (select top n id from tabl ...

  6. php sql跳过前四条数据,mysql实现每组取前N条记录的sql,以及后续的组数据量限制...

    select a.msg_id, a.com_id, a.data, a.ctime from sns_user_03.user_request_86 a where 5 (select count( ...

  7. oracle和sql server中,取前10条数据语法的区别

    在sql server中,取数据中前10条语句,我们可以用top 10 这样语句,但是oracle就没有这个函数,接下来介绍它们之间的区别 1.sql server 取前10语句和随机10条的语法 - ...

  8. mysql实现每组取前N条记录的sql,以及后续的组数据量限制

    应用场景大概是这样的:比如有很多消息流,这些消息来自不通的app,聚合在一个页面上,查看的时候不能让一个app的消息霸屏,所以就会类似于折叠功能,同一个app的消息只显示最多5条,再多的话,就要点进去 ...

  9. mysql 分组内取前几条数据

    项目中很常见的一个需求就是取出每个种类的前n条数据,这是我们通常想到分组(group by),但是group by后伴随着数据的聚合 每个种类只保留了一条数据,这并不满足我们的需求取前n条数据,这时候 ...

最新文章

  1. Go语言开发常见陷阱,你遇到过几个?
  2. jQuery(一)引入
  3. C++系列总结——构造与析构
  4. Android高通平台调试Camera驱动全纪录
  5. TCP VS UDP
  6. 关键路径 - 数据结构和算法67
  7. 【算法理解】从头开始理解梯度提升算法
  8. php案例之后台数据显示-- mysqli面向对象版(Object Oriented Programming = OOP)
  9. html 滑动返回顶部,返回页面顶部的几种方式总结
  10. 关于Nod的离线升级方案
  11. 一文读懂OSI七层网络模型与TCP-IP模型和对等网络通信协议
  12. word2007使用笔记 - 标题的分级编号
  13. macOS Big Sur 11.6.5 (20G527) 正式版 ISO、PKG、DMG、IPSW 下载
  14. android 多媒体列表,android – 使用Exoplayer的流媒体视频列表
  15. 开机时小键盘灯不亮的解决方案
  16. C++stoul、stoull 函数用法
  17. 主攻文推荐攻守都有系统_坚守最后一道防线
  18. TikTok(抖音国际版)逆向,全球的小姐姐们,我来啦!
  19. Canvas学习笔记之画线
  20. 25000 字详解 23 种设计模式(多图 + 代码)

热门文章

  1. C#命名规范 C#控件的缩写大全
  2. Asp.net Mvc视频教程 页面传值基础(get/post/UpdateModel)
  3. CentOS7攻克日记(三) —— 安装Python3.6
  4. 使用Python开发的POC多线程批量执行小框架
  5. 【转】HTTP Header 详解
  6. 数据库设计中的14个关键技巧收藏[转]
  7. Android之app混淆深入分析-层层解析解决开发中痛点
  8. Android面试题目之(七) AsyncTask的原理是什么?
  9. RecycleView 各个条目的信息混乱
  10. Servlet Mapping 中/ 和 /*的区别