如何解决MySQL选择一行,将其联接成多行
| 我有一个名为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
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。