2016-10-03 33 views
0

这不是标准MAX(column_name)回答我不认为。查询结果后获取列的最大值 - sql

基本上,我想查询返回一个表添加列MaxTotalRev。只应填充该列,如果它是具有TotalRev的最大值的行。所有其他行应该有这个列是空的。

这不应该影响返回结果的顺序。相反,它应该是返回表上的附加列。

total_rev | max_total_rev 
------------------------- 
    1  |  null 
    3  |  3 
    2  |  null 
+2

哪些DBMS您使用的? mysql <> sql服务器。你的答案会有所不同。 –

+2

好的。那么到目前为止尝试的是什么?这个网站的问题,它不是一个地方转储你的待办事项列表,并期望别人为你做你的工作。 –

+0

您可以在其他许多事情中使用子选择。 – scsimon

回答

2

下面是使用一个选项window function - max/over - 用case声明:

select total_rev, 
    case when total_rev = max(total_rev) over() then total_rev end as max_total_rev 
from yourtable