Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Maksymalna data nie zadziała, alternatywa?

Myślę, że kanoniczna odpowiedź na to pytanie jest następująca

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)

W Twoim przypadku cst_recno to PK i inv_trx_date to MaxThing



No
  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Czy można wymusić blokowanie na poziomie wiersza w SQL Server?

  2. Przeczytaj dziennik transakcji SQL Server

  3. tworzenie / aktualizacja widoku za pomocą procedury składowanej

  4. Rozmiar pola VARBINARY w SQL Server 2005

  5. Jaki jest najlepszy sposób wyświetlania obrazu z bazy danych serwera sql w asp.net?