Oracle
 sql >> Base de données >  >> RDS >> Oracle

Comment dois-je changer mon sql pour obtenir ce que je veux dans ce cas?

Vous pouvez utiliser row_number pour sélectionner les lignes avec la plus grande date par valeur

select * from (
    select t2.id2, t1.date, t2.data, 
        row_number() over (partition by t2.data order by t1.date desc) rn
    from table1 t1
    join table2 t2 on t1.id = t2.id2
) t where rn = 1