MS SQL将max()-1添加到qyery
如何添加到查询maxo.Acct-1行。我需要可视化最后两个o.Acct行。我的查询当前仅显示maxo.AcctMS SQL将max()-1添加到qyery,sql,sql-server,Sql,Sql Server,如何添加到查询maxo.Acct-1行。我需要可视化最后两个o.Acct行。我的查询当前仅显示maxo.Acct SELECT Max(o.Acct) AS [MaxAcct],o.ObjectID,o.Opertype FROM Operations o GROUP By o.ObjectID,o.Opertype 如果你想要最后两个,我想按顺序排列。大概是这样的: select top (2) o.* from Operations o order by o.acct desc; 如果要
SELECT Max(o.Acct) AS [MaxAcct],o.ObjectID,o.Opertype
FROM Operations o
GROUP By o.ObjectID,o.Opertype
如果你想要最后两个,我想按顺序排列。大概是这样的:
select top (2) o.*
from Operations o
order by o.acct desc;
如果要查看每组的最后两行,最好使用ROW_NUMBER,而不是group BY
Maxo.Acct-1是[MaxAcct减1]吗?请更清楚地描述您的请求。示例数据和期望的结果会有所帮助。虽然不清楚,但我认为OP希望每个ObjectID/Opertype有两行,而不仅仅是两行。
SELECT
*
FROM
(
SELECT
*,
ROW_NUMBER() OVER (PARTITION BY ObjectID,
Opertype
ORDER BY Acct DESC
)
AS sequence_id
FROM
Operations
)
sortedOperations
WHERE
sequence_id <= 2
ORDER BY
ObjectID,
Opertype,
Acct