gpt4 book ai didi

sql - 加入包含多条记录的第二个表,取最新的

转载 作者:行者123 更新时间:2023-12-01 10:30:46 26 4
gpt4 key购买 nike

我有两个表:

person_id | name
1 name1
2 name2
3 name3

和第二张 table :
person_id | date     | balance
1 2016-03 1200 ---- \
1 2016-04 700 ---- > same person
1 2016-05 400 ---- /
3 2016-05 4000

考虑到 person_id 1 在第二个表上有 3 个记录,我如何仅通过获取最新记录来加入第一个? (即:余额400,对应日期:2016-05)。

例如:查询输出:
person_id | name    | balance
1 name1 400
2 name2 ---
3 name3 4000

如果可能的话,更喜欢简单而不是解决方案的复杂性

最佳答案

适用于所有数据库引擎的查询是

select t1.name, t2.person_id, t2.balance
from table1 t1
join table2 t2 on t1.person_id = t2.person_id
join
(
select person_id, max(date) as mdate
from table2
group by person_id
) t3 on t2.person_id = t3.person_id and t2.date = t3.mdate

关于sql - 加入包含多条记录的第二个表,取最新的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42996692/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com