with tem_recent_login as (
    select
        user_id,
        client_id,
        date,
        row_number() over (partition by user_id order by date desc) as rn
    from 
        login
),

recent_login as (
    select
        *
    from
        tem_recent_login
    where 
        rn = 1
)

select
    u.name,
    c.name,
    r_l.date
from 
    recent_login as r_l
left join 
    user as u
on 
    r_l.user_id = u.id
left join 
    client as c
on 
    r_l.client_id = c.id
order by 
    u.name