码迷,mamicode.com
首页 > 其他好文 > 详细

获取记录集中不同组的特定记录

时间:2014-08-21 16:44:34      阅读:254      评论:0      收藏:0      [点我收藏+]

标签:blog   for   ar   art   div   代码   log   时间   

/****** Script for SelectTopNRows command from SSMS  ******/
/**求序列号([Serial])相同,编号([Num]主键)最大者的记录**/
  SELECT [Num]		--主键
      ,[Serial]
      ,[Depart]
      ,[Time]		--非主键(不同序列号的时间可能相同)
  FROM [Temp].[dbo].[A]
  WHERE [Num] IN (SELECT MAX([Num]) 
				  FROM [Temp].[dbo].[A]
				  GROUP BY [Serial]
				  )

/**求序列号([Serial])相同,时间([Time]非主键)最大者的记录**/
  SELECT a.[Num]	--主键
      ,a.[Serial]
      ,a.[Depart]
      ,a.[Time]		--非主键(不同序列号的时间可能相同)
  FROM [Temp].[dbo].[A] a,[Temp].[dbo].[A] b
  WHERE a.[Serial] = b.[Serial]
  GROUP BY a.[Num],a.[Serial],a.[Depart],a.[Time],b.[Serial]
  HAVING a.[Time] = MAX(b.[Time])

/**求序列号([Serial])相同,编号([Num]主键)最大者的记录**/
  SELECT a.[Num]	--主键
      ,a.[Serial]
      ,a.[Depart]
      ,a.[Time]		--非主键(不同序列号的时间可能相同)
  FROM [Temp].[dbo].[A] a,[Temp].[dbo].[A] b
  WHERE a.[Serial] = b.[Serial]
  GROUP BY a.[Num],a.[Serial],a.[Depart],a.[Time],b.[Serial]
  HAVING a.[Num] = MAX(b.[Num])

/**用下面代码 求序列号([Serial])相同,时间([Time]非主键)最大者的唯一记录错误 **/
  /*
  SELECT [Num]		--主键
      ,[Serial]
      ,[Depart]
      ,[Time]		--非主键(不同序列号的时间可能相同)
  FROM [Temp].[dbo].[A]
  WHERE [Num] IN (SELECT MAX([Time]) 
				  FROM [Temp].[dbo].[A]
				  GROUP BY [Serial]
				  )
	*/

 

获取记录集中不同组的特定记录,布布扣,bubuko.com

获取记录集中不同组的特定记录

标签:blog   for   ar   art   div   代码   log   时间   

原文地址:http://www.cnblogs.com/shenchao/p/3927382.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!