问题描述
|
我有一个名为
sessions
的表,如下所示:
#################################
# set # timestamp # session #
#################################
# 5 # 1306458002 # 11 #
# 3 # 1306473234 # 6 #
# 3 # 1305241207 # 3 #
...
#################################
我有另一个名为events
的表,如下所示:
#######################
# session # code #
#######################
# 6 # 45 #
# 6 # -10 #
# 6 # 0 #
# 3 # 7 #
...
#######################
我需要选择给定集合的最新会话,然后将相关事件代码加入该记录的顶部。不过最重要的是,我只需要提供一个集合(这里的集合为3)中的以下信息:
########
# code #
########
# 45 #
# -10 #
# 0 #
########
解决方法
select e.code
from events e
inner join sessions s
on s.session = e.session
where s.set = <whatever set you want>
and s.timestamp = (select max(timestamp) from sessions where set = s.set)
, select
e.code
from
(select
max(session) as session
from
sessions s
where
s.set = 3) ms
inner join event e on e.session = ms.session