SQL 取分组后前三条数据

来源:互联网 发布:安卓网络测试软件 编辑:程序博客网 时间:2024/05/01 11:38
CREATE TABLE TestSerialNumber(id int identity(1000,1) primary key,name varchar(20),code as LEFT(CONVERT(VARCHAR,GETDATE(),120),10)+'-'+CAST(id AS VARCHAR))INSERT INTO TestSerialNumberSELECT 'A'UNION ALLSELECT 'B'UNION ALLSELECT 'C'--可以根据 order by name 来控制排序规则SELECT T.id,T.name,T.rowNumber FROM (SELECT * ,row_number() over (partition by name order by name) as rowNumber FROM TestSerialNumber ) TGROUP BY T.id,T.name,T.rowNumber HAVING rowNumber<=3

原创粉丝点击