按版本筛选 SQL

Filter by version SQL

我有以下 table: Table

我想按最大(版本)过滤每个“UFI”和“PERIODO_QH”。

我曾尝试使用 max(VERSION),但我必须对所有其余列进行分组,因此由于其余列更改了其值,因此我获得了很多版本。

我在这个例子中需要的是只获取2行,每个UFI一个:

UFI  
===============================
ALZ1 NUCLEAR 90 200 68,72 68
ALZ2 NUCLEAR 35 100 68,72 39

我应该做什么查询?也许我不应该使用 MAX() 按表达式分组?

提前致谢。

你可以这样做:

select *
from (
  select *,
    row_number() over(partition by ufi, tecnologia order by version desc) as rn
  from t
) x
where rn = 1