SQL 分组后只获取每组的一条数据
/****** Object: Table [dbo].[TEMP] Script Date: 2018-8-22 星期三 23:33:09 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[TEMP](
[ID] [nvarchar](36) NULL,
[SerialNo] [nvarchar](36) NULL,
[Qty] [numeric](10, 1) NULL,
[ForeignId] [nvarchar](32) NULL,
[Flag] [bit] NOT NULL,
[CreateDate] [datetime] NOT NULL
) ON [PRIMARY] GO
INSERT [dbo].[TEMP] ([ID], [SerialNo], [Qty], [ForeignId], [Flag], [CreateDate]) VALUES (N'6073188b18574593b847dd0cac936dd5', N'1bf1c0f4f5034b2588b1c2e2b4f80294', CAST(10.0 AS Numeric(10, 1)), N'f6df43bdc3ef4eaeb8c0d98c9abea7eb', 0, CAST(0x0000A944017BBFEF AS DateTime))
GO
INSERT [dbo].[TEMP] ([ID], [SerialNo], [Qty], [ForeignId], [Flag], [CreateDate]) VALUES (N'6073188b18574593b847dd0cac936dd5', N'1bf1c0f4f5034b2588b1c2e2b4f80294', CAST(10.0 AS Numeric(10, 1)), N'b01892f11a284eea990afe0a4e4398b4', 0, CAST(0x0000A944017BDEF9 AS DateTime))
GO
INSERT [dbo].[TEMP] ([ID], [SerialNo], [Qty], [ForeignId], [Flag], [CreateDate]) VALUES (N'136eba69477c41879e4d0cf9a791d460', N'e60cffd61c314d248403cfd08370ed8c', CAST(10.0 AS Numeric(10, 1)), N'4ca2da2abf434910b5d3d6ed6c343637', 0, CAST(0x0000A944017C3F82 AS DateTime))
GO
INSERT [dbo].[TEMP] ([ID], [SerialNo], [Qty], [ForeignId], [Flag], [CreateDate]) VALUES (N'136eba69477c41879e4d0cf9a791d460', N'e60cffd61c314d248403cfd08370ed8c', CAST(10.0 AS Numeric(10, 1)), N'b6fa2439e5bb44c58cff03b2725558d8', 0, CAST(0x0000A944017C5604 AS DateTime))
GO
INSERT [dbo].[TEMP] ([ID], [SerialNo], [Qty], [ForeignId], [Flag], [CreateDate]) VALUES (N'136eba69477c41879e4d0cf9a791d460', N'e60cffd61c314d248403cfd08370ed8c', CAST(11.0 AS Numeric(10, 1)), N'c465a72d36b5450e9a53e565ed95012d', 1, CAST(0x0000A944017B4EC2 AS DateTime))
GO
INSERT [dbo].[TEMP] ([ID], [SerialNo], [Qty], [ForeignId], [Flag], [CreateDate]) VALUES (N'136eba69477c41879e4d0cf9a791d460', N'e60cffd61c314d248403cfd08370ed8c', CAST(20.0 AS Numeric(10, 1)), N'd68efcd219634579966801b036ca8e29', 1, CAST(0x0000A944017C7370 AS DateTime))
GO
INSERT [dbo].[TEMP] ([ID], [SerialNo], [Qty], [ForeignId], [Flag], [CreateDate]) VALUES (N'6073188b18574593b847dd0cac936dd5', N'1bf1c0f4f5034b2588b1c2e2b4f80294', CAST(8.0 AS Numeric(10, 1)), N'2178fc8b537e4841a505e5e5a960ed83', 1, CAST(0x0000A944017C94CD AS DateTime))
GO
INSERT [dbo].[TEMP] ([ID], [SerialNo], [Qty], [ForeignId], [Flag], [CreateDate]) VALUES (N'6073188b18574593b847dd0cac936dd5', N'1bf1c0f4f5034b2588b1c2e2b4f80294', CAST(22.0 AS Numeric(10, 1)), N'7306f311b69e425cba13991030d7a2d3', 1, CAST(0x0000A944017CB571 AS DateTime))
GO
SELECT * FROM dbo.TEMP A
WHERE A.ForeignId IN (
SELECT TOP 1 B.ForeignId FROM dbo.TEMP B WHERE B.ID = A.ID AND B.SerialNo = A.SerialNo
ORDER BY B.Flag,B.CreateDate
)
SQL 分组后只获取每组的一条数据的更多相关文章
- Mongo 分组后排序取时间最大的一整条数据对象
db.getCollection('product_protocol_new').aggregate([ {$sort:{"end_date":-1}}, {$group:{ _i ...
- sql 分组后显示每组的前几条记录
sql 分组后显示每组的前几条记录 如 表中记录是 code serialno A1 1 ...
- sql 分组后按时间降序排列再取出每组的第一条记录
原文:sql 分组后按时间降序排列再取出每组的第一条记录 竞价记录表: Aid 为竞拍车辆ID,uid为参与竞价人员ID,BidTime为参与竞拍时间 查询出表中某人参与的所有车辆的最新的一条的竞价记 ...
- SQL分组排序后取每组最新一条数据的另一种思路
在hibernate框架和mysql.oracle两种数据库兼容的项目中实现查询每个id最新更新的一条数据. 之前工作中一直用的mybatis+oracle数据库这种,一般写这类分组排序取每组最新一条 ...
- 在SQL SERVER中获取表中的第二条数据
在SQL SERVER中获取表中的第二条数据, 思路:先根据时间逆排序取出前2条数据作为一个临时表,再按顺时排序在临时表中取出第一条数据 sql语句如下: select top 1 * from(se ...
- 关于sql server远程访问Oracle数据库 OpenQuery查询返回多条数据的问题
在Sql Server远程访问Oracle 中的数据库表时: 远程语法通常为: select * from OpenQuery(Oracle链接服务器名称,‘查询语句’) eg: select * f ...
- SQL 分组后获取每组中最大值
场景:sql server 2008 drop table ID CREATE TABLE ID ( id ,) not null, code int , D date, PRIMARY KEY (i ...
- mssql sqlserver 使用sql脚本获取群组后,按时间排序(asc)第一条数据的方法分享
摘要: 下文讲述使用sql脚本,获取群组后记录的第一条数据业务场景说明: 学校教务处要求统计: 每次作业,最早提交的学生名单下文通过举例的方式,记录此次脚本编写方法,方便以后备查,如下所示: 实现思路 ...
- SQL 分组后获取其中一个字段最大值的整条记录
--有id,name,createDate的一张表testTable--根据name分组,获取每组中createDate最大的那条记录(整条)查询出来------------------------- ...
随机推荐
- jenkins+maven+svn实现springboot项目的自动化部署过程
说明:部署springboot项目的jar 前提(参考:https://www.cnblogs.com/myitnews/p/11493779.html): 全局安全配置(前面配置过) 全局工具配置( ...
- LeetCode 110. Balanced Binary Tree平衡二叉树 (C++)
题目: Given a binary tree, determine if it is height-balanced. For this problem, a height-balanced bin ...
- C++面向对象程序设计学习笔记(2)
C++在非面向对象方面的扩充 C++向下兼容C语言,因此C语言中的语法在C++中依然成立 输入输出 C++添加了标准输入流对象cin和标准输出流对象cout来进行输入输出, 例: #include&l ...
- mysql使用记录
1. 报错 10061 将mysql启动即可
- Graphviz学习
(入门教程)[https://www.luogu.com.cn/blog/umr/graphviz]
- 【领会要领】web前端-轻量级框架应用(jQuery基础)
作者 | Jeskson 来源 | 达达前端小酒馆 jquery的安装和语法,jquery的多种选择器,dom操作和jquery事件. jQuery框架,简介,优势,安装,语法,jQuery选择器,i ...
- 使用IDEA+vue.js+easyUI的demo
最近,随便写了几个开发的小例子,自己总结下,留个纪念. 例子1:使用EasyUI做了一个简单界面,服务器和客户端在一起. @Controller @RequestMapping("/demo ...
- Spring中抽象类中使用EmbeddedValueResolverAware和@PostConstruct获取配置文件中的参数值
我的需求: 我有一个 abstract class 中包含了很多子类中需要用到的公共方法和变量,我想在抽象类中 使用@Value获取*.properties中的值.但是@Value必须要在Spring ...
- QT+FFMPEG实现视频播放
开发环境:MinGW+QT5.9+FFMPEG20190212 一.开发环境搭建 FFMPEG的开发环境部署比如容易,在官网下载库文件,然后在QT里面指定路径,把相关dll文件放到exe目录下就可以了 ...
- 用友U8根据客户简称/供应商简称的拼音首字母生成助记码
用友U8+中,客户档案和供应商档案可以设置自动生成助记码,但软件只能自动根据客户全称/供应商全称生成助记码,而无法选择按简称生成助记码,这显然十分不方便,可以通过如下方式解决: 修改步骤 1.往数据库 ...