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最大的那条记录(整条)查询出来------------------------- ...
随机推荐
- 不使用已下载的package pip 安装 & 出现time out error
pip install XX + --no-cache-dir 安装出现time out error时: pip --default-timeout=10000 install XX
- zz1998_Efficient Backprop笔记
1998_Efficient Backprop笔记 A few practical tricks 1. Stochastic vs Batch learning 在最小值附近震荡的幅度与学习速率成比例 ...
- testcontainers 基本使用
以下是一个简单的基于testcontainers 的测试(基于java 项目) 预备环境 因为testcontainers 基于docker 运行,所以需要安装docker 引擎 项目准备 项目结构 ...
- [HNOI2002] Kathy 函数
数位 DP 套路题,求二进制下区间内回文串个数. 设 dp[][][] 表示到第几位时,是否为回文数,去掉前导零后共几位.之后到边界时判断是否为回文数计入贡献. 一开始不知道答案统计要高精,于是后来就 ...
- [LeetCode] 215. Kth Largest Element in an Array 数组中第k大的数字
Find the kth largest element in an unsorted array. Note that it is the kth largest element in the so ...
- html头部中各式各样的meta
在写网页的过程中,第一步就是创建一个html文档.如下是最简单的 html5 文档. <!DOCTYPE html> <html lang="en"> &l ...
- Linux 启动数据库报错:could not open parameter file init**.ora
sqlplus /nolog.conn /as sysdba.startup命令后显示 SQL> startupORA-01078: failure in processing system p ...
- Azure DevOps Server 经验分享(国内重型工程公司)
受邀在上海为国内著名的重型工程公司的软件研发团队分享了Azure DevOps Server 的经验. http://www.cnblogs.com/danzhang/ DevOps MVP 张洪君 ...
- Qt Quick 常用元素:ComboBox(下拉列表) 与 ProgressBar(进度条)
一.ComboBox ComboBox,即下拉列表框,由一个列表框和一个标签控件(或编辑控件)组成.ComboBox 的下拉列表是使用 Menu 实现的,列表内的每个条目对应一个 Menultem. ...
- Java连载9-数据类型&字符编码
一.数据类型注意:(1)计算机最初只支持英文,最先出现的字符编码是:ASII码例如:‘a'对应97,对应01100001(2)编码和解码的时候采用同一套字典/对照表,不会出现乱码.否则会出现乱码.二. ...