Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Max Date funktioniert nicht, Alternative?

Ich denke, die kanonische Antwort auf diese Frage lautet wie folgt

with AllData as
(
select ... from ...
where ...
)
select * from allData ad1
inner join 
(
    select pk1, pk2, pk<n>, max(MaxThing) MaxVal 
    from AllData
    group by pk1, pk2, pk<n>
) as ad2 
on (ad1.pk1=ad2.pk1 and ad1.pk2=ad2.pk2 and ad1.pk<n>=ad2.pk<n> 
and  ad1.MaxThing=ad2.MaxVal)

In Ihrem Fall cst_recno ist die PK und inv_trx_date ist das MaxThing



No