oracle 求某一列最大值,其他列的值
1个回答
展开全部
你是要求某一列中最大值,然后查询最大值这一行的其他列值,是吧。
就是嵌套查询就行,先查最大值,然后再用这个最大值作为条件就可以了。
类似于下面的语句
select * from table where id=(select max(id) from table)
可能需要很多变动,比如需要分组求最大,然后查询出每组的那一行数据,这就需要对这个语句进行一些修改了(用开窗函数rank()over()然后嵌套查询也可以,这个可以自由选择)(以下内容分仅为举例,长时间没这么写了,具体的写法忘记了,可能要进行些修改才能用)
select * from table where id||id_1 in (select id||max(id_1) from table group by id )
就是嵌套查询就行,先查最大值,然后再用这个最大值作为条件就可以了。
类似于下面的语句
select * from table where id=(select max(id) from table)
可能需要很多变动,比如需要分组求最大,然后查询出每组的那一行数据,这就需要对这个语句进行一些修改了(用开窗函数rank()over()然后嵌套查询也可以,这个可以自由选择)(以下内容分仅为举例,长时间没这么写了,具体的写法忘记了,可能要进行些修改才能用)
select * from table where id||id_1 in (select id||max(id_1) from table group by id )
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询