'USv3s_tggf19'
我正在PostgreSQL 服务器中提取此查询 os 用户database
。
select us.id as user_step_id, us.goal_id, us.user_id, us.created_datetime
, m.mod_code, m.modified_datetime
from database.user_steps us
left join database.mods m on
us.goal_id = m.goal_id
where us.user_id like 'USv3s_tggf19'
这是我的桌子:
正如您所看到的,因为在database.mods 表中存在与同一事物的不同修改相关的重复记录,所以我最终在输出中出现重复记录,这是预期的。
m.modified_date
现在,我的意图是留下最接近的记录us.created_datetime
。我的最终结果应该是这样的:
我一直在尝试在其他响应中查找不同的内容,并且此查询是看起来最接近的查询,但它不会从表中返回任何信息mods
。
select us.id as user_step_id, us.goal_id, us.user_id, us.created_datetime
, m.mod_code, m.modified_datetime
from database.user_steps us
left join database.mods m on
us.goal_id = m.goal_id
and us.created_datetime = (select max(m.modified_datetime) from database.mods m where m.modified_datetime < us.created_datetime)
where us.user_id like 'USv3s_tggf19'
我将不胜感激任何指导。