【发布时间】:2017-06-29 12:09:00
【问题描述】:
我的问题要求我“显示总价最高的交易的 trade_id、stock_id 和总价。
我只需要使用一张表,那就是交易表。
目前我有:
select trade_id,stock_id,max(price_total)
from trade
group by trade_id, stock_id;
我需要获取最高行的交易(我知道 trade_id、stock_id 和总价格),但我的查询显示的行范围很广,我只需要 1 行,即最高的行price_total 和它对应的 stock_id 和 trade_id。有谁知道如何只获取询问的 1 行。
P.S:我知道它是哪一行,但我似乎无法仅在查询结果中返回该行。谢谢!
【问题讨论】:
-
尝试使用
HAVING子句。 -
当两笔或多笔交易并列以获得最高总价时,该要求说明了什么? (顺便说一句,如果要求对此保持沉默,那么这是一个糟糕的要求。)
-
在 Google 中尝试 stackoverflow oracle select row with max value,您会找到所有可能的解决方案(以及许多不可能的解决方案)。学会为自己做一些研究。
-
我尝试了 google 和 stack verflow,但我的搜索返回了硬编码和与我搜索的内容无关的问题。
标签: sql oracle greatest-n-per-group