oracle通过一个字段分组,取另一个字段的最大值

select * from bdcdj.lqentry1 a  where 顺序号 in (select max(顺序号) from bdcdj.lqentry1 b WHERE b.archival_code IS NOT NULL  group by archival_code);

通过archival_code分组  ,取顺序号的最大值。

原文地址:https://www.cnblogs.com/wangleping/p/11712175.html

时间: 2024-10-04 10:00:54

oracle通过一个字段分组,取另一个字段的最大值的相关文章

SQL按字段分组取最大(小)值记录(重复记录)

SQL Server 按某一字段分组 取 最大 (小)值所在行的数据 -- 按某一字段分组 取 最大 (小)值所在行的数据 -- (爱新觉罗.毓华(十八年风雨,守得冰山雪莲花开) 2007-10-23于浙江杭州) /* 数据如下: name val memo a    2   a2(a的第二个值) a    1   a1--a的第一个值 a    3   a3:a的第三个值 b    1   b1--b的第一个值 b    3   b3:b的第三个值 b    2   b2b2b2b2 b   

按某一字段分组取最大(小)值所在行的数据 分拆列值(转) 日期的推算

数据如下:name val memoa 2 a2(a的第二个值)a 1 a1--a的第一个值a 3 a3:a的第三个值b 1 b1--b的第一个值b 3 b3:b的第三个值b 2 b2b2b2b2b 4 b4b4b 5 b5b5b5b5b5*/--创建表并插入数据:create table tb(name varchar(10),val int,memo varchar(20))insert into tb values('a', 2, 'a2(a的第二个值)')insert into tb v

Sql按照字段分组,选取其他字段最值所在的行记录

引言: 为什么会引入这个问题,在程序中遇到这样的问题,在某个数据表中,相同的AID(项目ID)被多次添加到数据表中,所以对应于不同的时间,只想选取添加时间最早的哪一条记录. 参考:红黑联盟 所用到的数据表: 想实现的效果: 解释:相同的ID,由不同的人(Name)添加,我们选取值最小(Val)的那一行记录. 方法如下: 方法一: 1 select a.* from T1 a , 2 (select id,min(val) as val from T1 group by id) b 3 where

sql 以某个字段分组,另一个字段为参加比较的列,取得前n项的值

假设表A有三个字段 { id int: subject varchar(20): socre int: } 语句为 select * from A  x where (select count(*) from A where subject=x.subject and score>=x.score   )<=15

TP5中(通过一个表去取另一个表的相对应的名称)

1.数据库实例 2.控制器内,先使数据先使页面(此控制器内为sign表格) 3.封装一个方法(通过用户id获取名称,此表为name表格的数据) 4.静态页面(调用name表格的内容,与sign表格的user_id相对应,此时名称也就取出来了) 5.网页页面 原文地址:https://www.cnblogs.com/dennyxiao/p/8394034.html

MySql按字段分组取最大值记录

要求:获得按table1_id分组,并且age最大的记录信息,即2.3.5条 方法一: select * from (select * from table2 order by age desc) as a group by a.table1_id 方法二: select a.* from table2 as a where age = (select max(age) from table2 where a.table1_id=table1_id) 方法三: select a.* from t

MySql按字段分组取最大值记录 [此博文包含图片]

要求:获得按table1_id分组,并且age最大的记录信息,即2.3.5条 方法一: select * from (select * from table2 order by age desc) as a group by a.table1_id 方法二: select a.* from table2 as a where age = (select max(age) from table2 where a.table1_id=table1_id) 方法三: select a.* from t

SQL分组取每组前一(或几)条记录(排名)

mysql分组取每组前几条记录(排名) 附group by与order by的研究 http://www.jb51.net/article/31590.htm --按某一字段分组取最大(小)值所在行的数据 代码如下: /* 数据如下: name val memo a 2 a2(a的第二个值) a 1 a1--a的第一个值 a 3 a3:a的第三个值 b 1 b1--b的第一个值 b 3 b3:b的第三个值 b 2 b2b2b2b2 b 4 b4b4 b 5 b5b5b5b5b5 */ --创建表

MySQL查询-分组取组中某字段最大(小)值所有记录

最近做东西的时候,用到一个数据库的查询.将记录按某个字段分组,取每个分组中某个字段的最大值的所有记录.举栗子来说. 已知分数表“score”,包含字段“id", "name", "course", "score".包含记录如下图所示. 现在,要求查询每个人分数最高的课程的那一条记录.即获得如下结果: 大概思路是,先通过order by将记录按score字段排序,创建临时表.然后按name字段分组查询临时表,即可获得所需查询结果.完整的s

Oracle 存储过程调用返回游标的另一个存储过程。

一个扩展存储过程调用另一个存储过程,示例: 被调用存储过程:最后会返回一个游标,游标返回一个值.调用这个存储过程的存储过程同样需要获取它. procedure SearchBill --根据到货单号查询所有行号 ( P_code VARCHAR, P_UserCode varchar , P_org varchar, P_warehouse varchar, p_movetype varchar, p_billtype varchar, p_note varchar, p_isred varch