【发布时间】:2018-09-11 18:21:21
【问题描述】:
我有两个表,事件和版本。一个事件有多个版本。我想执行内部连接并获得每个事件的最新版本。 (原来的问题在这里:Join two tables and apply group by, but change sort order)
我已将表格更改为此。我认为这更有意义。但我处于同样的情况,我不明白如何获取每个事件的最大版本 ID。我想了解解决方案背后的逻辑。随时给我关于表结构的反馈。谢谢!
查询:
SELECT e.id AS event_id,v.*
FROM events.event e
INNER JOIN events.version v
ON (v.event_id = e.id)
GROUP BY v.event_id
活动
Id Updated
1 03/08/18
2 06/06/18
版本
Id Event_id Name Description
7 1 Dinner Dinner Z
8 2 Breakfast Breakfast Y
9 2 Breakfast Breakfast X
【问题讨论】:
-
select max(v.id),v.*,e.* from EVENT as e inner join VERSION as v on e.Id=v.Event_id group by v. Event_id 试试查询,我认为它工作正常。
标签: mysql sorting join group-by sql-order-by