MySQL выберите одну строку, присоедините к ней несколько - PullRequest
0 голосов
/ 27 мая 2011

У меня есть таблица с именем 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    #
########

Ответы [ 2 ]

2 голосов
/ 27 мая 2011
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
0 голосов
/ 27 мая 2011
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)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...