对具有多个值的子查询应用过滤器

Apply filter on subquery with multiple values

我有一个tableUSER_DETAILS 我还有另一个 table 名为 PASSWORD

USER_DETAILS contains:-
id| name| phone_number

PASSWORD contains:-
id|user_id| password| created_at | password_hint

一个用户的密码可以包含多个条目

现在我想为正在执行此操作的用户获取最新密码 created_at。

select user.id,created_at from user_details as user
where user.id in (select user_id,max(created_at) from password group by user_id)

但这不起作用,因为子查询返回多个值我如何使用子查询执行此操作(我知道我也可以使用 join 执行此操作但我正在寻找子查询解决方案)

有很多方法,对于子查询,您可以使用 相关 查询

select id, (select max(created_at) from password p where p.user_id=u.id) as created_at
from user_details u