sql获取数据集中各类型中的最大值(最新值)

sql获取数据集中各类型中的最大值(最新值)

ID:34726220

大小:83.79 KB

页数:3页

时间:2019-03-10

sql获取数据集中各类型中的最大值(最新值)_第1页
sql获取数据集中各类型中的最大值(最新值)_第2页
sql获取数据集中各类型中的最大值(最新值)_第3页
资源描述:

《sql获取数据集中各类型中的最大值(最新值)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、最近在论坛中的MSSqlServer版块经常看到网友求助如何从一组数据集中获取每个类型中的某个字段最大的一条记录或者最新记录,首先大家都会想到采用group关键字分组,再利用max()函数获取最大的一条记录,但这样只能返回分组的字段,不能返回所有的字段,因此我在这里提供一种解决方法。 创建表语句 ?1234567891011121314151617181920212223242526[sql]USE[master] GO    /******Object: Table[dbo].[Table_1]   ScriptDate:08/05/201313

2、:21:28******/ SETANSI_NULLSON GO    SETQUOTED_IDENTIFIERON GO    SETANSI_PADDINGON GO    CREATETABLE[dbo].[Table_1](     [id][int]NOTNULL,     [pid][int]NOTNULL,     [op_type][varchar](50)NOTNULL,     [op_time][datetime]NULL,     [op_man][varchar](50)NULL )ON[PRIMARY]    GO   

3、 SETANSI_PADDINGOFF GO  向表中插入测试数据 ?1234567[sql]insertinto[master].[dbo].[Table_1]([id],[pid],[op_type],[op_time],[op_man])values( 1  ,  1  ,  '手动'   ,  '2013-03-0500:00:00.000'  ,  'A'); insertinto[master].[dbo].[Table_1]([id],[pid],[op_type],[op_time],[op_man])values( 2  ,  1

4、  ,  '自动'   ,  '2013-05-0500:00:00.000'  ,  'B'); insertinto[master].[dbo].[Table_1]([id],[pid],[op_type],[op_time],[op_man])values( 3  ,  2  ,  '手动'   ,  '2013-06-0600:00:00.000'  ,  'A'); insertinto[master].[dbo].[Table_1]([id],[pid],[op_type],[op_time],[op_man])values( 4  ,

5、  1  ,  '手动'   ,  '2013-06-0600:00:00.000'  ,  'A'); insertinto[master].[dbo].[Table_1]([id],[pid],[op_type],[op_time],[op_man])values( 5  ,  1  ,  '自动'   ,  '2013-06-0700:00:00.000'  ,  'A'); insertinto[master].[dbo].[Table_1]([id],[pid],[op_type],[op_time],[op_man])values( 6

6、  ,  2  ,  '自动'   ,  '2013-06-0700:00:00.000'  ,  'B');  用select语句查询得到的结果  期望结果  开始我们都会采用分组和聚合函数的方式 ?1234[sql]SELECT[pid],max([op_time])asop_time FROM[master].[dbo].[Table_1] groupbypid  但这样得到的结果只能包含pid和op_time字段,不能包含这个表中所有的字段,因此我这里提供一种方法,对每个pid的数据进行排序,然后再取第一个 ?12345678[sql]se

7、lect*from (   SELECTt.*,ROW_NUMBER()over(partitionbyt.pidorderbyt.op_timedesc)num   FROM[master].[dbo].[Table_1]t )a wherenum=1 GO

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。