Модераторы: skyboy
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Вывод последних записей с пометкой прочтения 
:(
    Опции темы
motorway
Дата 29.3.2013, 21:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 578
Регистрация: 2.3.2008

Репутация: нет
Всего: 0



Имеется таблица messages с полями id,uid,aid,date.
Нужно вывести из неё aid и uid для самой последней записи (новой по времени) для каждого uid.
Как вывести все uid - это понятно:
Код

SELECT DISTINCT uid FROM messages

Теперь нужно найти для каждого из них aid для последнего по времени сообщения.
Приходит на ум использовать условие 
Код

WHERE uid IN (SELECT DISTINCT uid FROM messages)
 для перебора всех uid.
А вот как прописать, чтобы выводилось aid для последней даты для каждого из этих uid, не соображу.
Некоторые варианты пробовал, но выводится несколько aid.
Кто может помочь?
p.s. В aid индикатор того, читал/отвечал ли кто-то на это сообщение. Если пусто, значит нет.

Это сообщение отредактировал(а) motorway - 29.3.2013, 21:27
PM MAIL   Вверх
Zloxa
Дата 29.3.2013, 22:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Чо?
****


Профиль
Группа: Завсегдатай
Сообщений: 3473
Регистрация: 12.9.2008

Репутация: 33
Всего: 161



Цитата(motorway @  29.3.2013,  22:25 Найти цитируемый пост)
 вывести из неё aid и uid для самой последней записи (новой по времени) для каждого uid.

бабушкин метод

Это сообщение отредактировал(а) Zloxa - 29.3.2013, 22:12


--------------------
Достоверно известно, что 89% людей доверяют статистике взятой с потолка smile
PM   Вверх
password
Дата 29.3.2013, 22:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 76
Регистрация: 23.9.2008
Где: Украина, Сумы

Репутация: нет
Всего: 8



Можно попробовать так:
Код

select a.* from messages a
inner join (select uid, max(date) as dd from messages group by uid) b on a.uid=b.uid and a.date=b.dd

PM MAIL Skype   Вверх
motorway
Дата 29.3.2013, 23:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 578
Регистрация: 2.3.2008

Репутация: нет
Всего: 0



Спасибо!
Первый способ только на свежую голову, насколько возможно.
Второй выглядит проще, надо бы освежить основы, join часто забывается )
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | MySQL | Следующая тема »


 




[ Время генерации скрипта: 0.0422 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.