SQL - 如何在不使用 Oracle 中的子查询的情况下 select 具有最大值的列的行
SQL - How to select a row having a column with max value without using sub query in Oracle
date value
18/5/2010 40
18/5/2010 20
20/5/2010 60
18/5/2010 30
17/5/2010 10
16/5/2010 40
18/5/2010 60
18/5/2010 25
输出
date value
18/5/2010 60
20/5/2010 60
我需要查询具有最大值(值)(即 60)的行。所以,这里我们得到两行。
日期可以任意排序
请不要使用 SUBQUERY
我需要一个不使用子查询的动态查询
NESTED QUERY 没问题...
我试过使用 rownum ...其中 rownum< some_value ...但它不是动态的
在 12c 中,FETCH 子句允许您这样做
select * from the_table
order by value desc
FETCH FIRST 1 ROWS WITH TIES;
date value
18/5/2010 40
18/5/2010 20
20/5/2010 60
18/5/2010 30
17/5/2010 10
16/5/2010 40
18/5/2010 60
18/5/2010 25
输出
date value
18/5/2010 60
20/5/2010 60
我需要查询具有最大值(值)(即 60)的行。所以,这里我们得到两行。
日期可以任意排序
请不要使用 SUBQUERY
我需要一个不使用子查询的动态查询
NESTED QUERY 没问题...
我试过使用 rownum ...其中 rownum< some_value ...但它不是动态的
在 12c 中,FETCH 子句允许您这样做
select * from the_table
order by value desc
FETCH FIRST 1 ROWS WITH TIES;