查询数据表里所有重复里的单条记录

测试脚本:
CREATE TABLE [dbo].[TEST](
	[ID] [int] IDENTITY(1,1) NOT NULL,
	[TID] [int] NULL,
	[Discription] [nvarchar](200) NULL
)  
--测试数据
DELETE FROM TEST
INSERT INTO TEST (TID,Discription)VALUES (1,'记录1-1')
INSERT INTO TEST (TID,Discription)VALUES (1,'记录1-2')
INSERT INTO TEST (TID,Discription)VALUES (1,'记录1-3')
INSERT INTO TEST (TID,Discription)VALUES (1,'记录1-4')
INSERT INTO TEST (TID,Discription)VALUES (1,'记录1-5')
INSERT INTO TEST (TID,Discription)VALUES (2,'记录2-1')
INSERT INTO TEST (TID,Discription)VALUES (2,'记录2-2')
INSERT INTO TEST (TID,Discription)VALUES (2,'记录2-3') 

SELECT * FROM TEST
查询结果:

查询数据表里所有重复里的单条记录

TID为重复字段,现在需找出所有TID中ID字段值最大的记录。

如下图所示:

查询数据表里所有重复里的单条记录

解决办法:GROUP BY() 函数+Max()函数

SELECT * FROM TEST WHERE ID IN (SELECT MAX(ID)FROM Test GROUP BY TID )

上一篇:Lucene5学习之多索引目录查询以及多线程查询


下一篇:PolarDB-X 1.0-用户指南-数据导入导出-使用程序进行数据导入