SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 14.07.2010 13:07:04

Simba
Участник
Зарегистрирован: 07.09.2009
Сообщений: 10

Помогите с запросом

Добрый день!

Есть таблица Tab1 (пример)
[id] [Fio]         [Notes] и т.д.
1    Петров      оропопоп
2    Сидоров     длододод

И таблица Tab2 (пример)
[id]  [idTab1] [Action]     [Date]
1     1           1             15.06.2009
2     1           2              16.06.2009
3     2           1              24.05.2010
4     2           2              30.08.2010
5     2           1              10.09.12010

связь по полю Tab1.id=Tab2.idTab1

Как можно получить данные, содержащие последнее значение Action?
У Петрова - это 2
У сидорова - это 1

И далее, с условием: имеющие определенное значение Action в определенном году:
т.е. ... WHERE `Action`=1 AND Year(`Date`)=2010 ...
Тут будет только Сидоров.

Пробовал Select Max(Tab2.id) и т.д. но он не то возвращаетsad

Спасибо.

Неактивен

 

#2 14.07.2010 14:07:26

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Помогите с запросом

Сначала надо выбрать MAX(Date), а потом присоединить эту же табличку
еще раз по этому полю (и по idTab1).

Неактивен

 

#3 14.07.2010 14:36:26

Simba
Участник
Зарегистрирован: 07.09.2009
Сообщений: 10

Re: Помогите с запросом

Спасибо, пробую...

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson