clwn.net
当前位置:首页 >> 分组取第一条 >>

分组取第一条

select * from ( select row_number() over(partition by '分组' order by '日期') as rownum -- 排序并分组 , * -- 所需显示的字段 from 表 ) as T where T.rownum = 1 对每组的数据按日期排序并加上行号 取出时只取行号为1,也就是第一条数据。

用row_number函数可以解决。 1、创建测试表及插入数据: create table test(id int,name varchar(10),score int,classname varchar(20));insert into test values (1,'张三',100,'一班');insert into test values (2,'李四',89,'一班');insert i...

--不知道你需要依据什么分组,如下是根据table1_id进行分组所得结果 select * from (select a.id as a_id,a.name,a.time,a.content,b.id as b_id,b.user from table1 a inner join table2 b on a.id = b.table1_ID) new_tbl where b_id in (sele...

--如果临时表存在,删除 if exists (select * from tempdb.dbo.sysobjects where id = object_id('tempdb.dbo.[##tableA]')) drop table [dbo].[##tableA] --以第一条记录创建临时表 --注:根据你的要求,追加了一个用来确定组内记录序号的字段r...

oracle进行分组后,取出每组的前几条数据SELECT *FROM (SELECT 分组的字段名,ROW_NUMBER() OVER(PARTITION BY 分组的字段名 ORDER BY 排序的字段名) AS RNFROM 表名)WHERE RN

select 星期,max(字母) As 字母 from 表 group by 星期

select userid,ranking,username from table where userid+ranking in ( select userid+max(ranking) from table group by userid )

请使用max函数

第一条: select * from (select * from table order by a) where rownum

select max(年龄字段) from 表名 group by City;

网站首页 | 网站地图
All rights reserved Powered by www.clwn.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com