Запрос на просмотр лога
Релиб
Форумы       Участники    Календарь    Кто он-лайн?
Добро пожаловать, гость ( Вход | Регистрация )
        



Запрос на просмотр лога Expand / Collapse
Автор
Сообщение
28.12.2006 13:32
Junior Member

Junior MemberJunior MemberJunior MemberJunior MemberJunior MemberJunior MemberJunior MemberJunior Member

участник
Last Login: 27.09.2007 13:45
Сообщ.: 13, Visits: 254
есть таблица
dat дата действия
user пользователь
comment1 текст
comment2 текст
ну и тд
собственно вопрос как в одном запросе вывести только последние действие
каждого пользователя,те должно получиться типа
21.12.06 Пупкин действ1
12.12.06 Иванов действ4
С помощью промежуточной вьюхи у меня получилось но хотелось бы знать
как можно сделать это в одном запросе
PS SQL только начинаю изучать,так что извините за ламерский вопрос
Сообщ. #909332
28.12.2006 13:40


Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

модератор
Last Login: 29.10.2007 14:45
Сообщ.: 1 833, Visits: 16 863
Нечто в этом роде. Но учти, что будет выводиться на каждого юзера столько записей, сколько их с равной макимальной датой.

SELECT UserID, Date, act2.Action

FROM

(

      SELECT UserId, Max(Date) Date

      FROM Actions

      GROUP BY UserID

) act1

INNER JOIN Actions act2

      on act1.UserID=act2.UserID and act1.Date=Act2.Date

Сообщ. #909333
28.12.2006 14:29
Junior Member

Junior MemberJunior MemberJunior MemberJunior MemberJunior MemberJunior MemberJunior MemberJunior Member

участник
Last Login: 27.09.2007 13:45
Сообщ.: 13, Visits: 254
[quote]Alexey Spirin (28.12.2006)


Благодарю.В принципе у меня было тоже самое тока с помощью вьюхи.
А тут узнал что вложенному запросу можно просто дать имя и работать
как с обычной таблицей.
Сообщ. #909334
« пред. тема | след. тема »


Эту тему читают Expand / Collapse
Посетители: 0 (0 гостей, 0 участников, 0 скрыт.участников)
Сейчас нет участников, просматривающих тему.
Модераторы: Alexey, boombastik, bazile, pl, Alexey Spirin

Время GMT +3:00, Сейчас 4:06