ФорумРазработкаБазы данных → Помогите правильно составить запрос

Помогите правильно составить запрос

  • at0m1x

    Сообщения: 10 Репутация: N Группа: Кто попало

    Spritz Янв. 31, 2012, 10:31 д.п.

    Всем привет! В mysql базе данных моего сайта есть таблица сообщений - переписка пользователей друг с другом. Таблица имеет следующие поля:


    message_id | sender_id | recepient_id | subject | message | time


    В этой таблице содержится 4000000 записей. Мне необходимо из нее выбрать последние сообщения всех пользователей. Я пробовал делать выборку таким запросом:


    SELECT `sender_id`, `subject`, `message`, `time`
    FROM `messages`
    GROUP BY `sender_id`
    ORDER BY `time` DESC


    Запрос ошибок не выдает, выбирает по одному сообщению для каждого пользователя, но при проверке оказалось что он выбирает не последние сообщения. Подскажите в чем может быть ошибка и как правильно составить такой запрос.
  • artoodetoo

    Сообщения: 5147 Репутация: N Группа: в ухо

    Spritz Янв. 31, 2012, 12:06 п.п., спустя 1 час 34 минуты 42 секунды

    at0m1x, в первой строке сделай max(time)
    Спустя 119 сек.
    и имей в виду, что эту mysql позволяет во фразе select писать много полей. это сбивает с толку таких школяров как ты.
    стандарт указывает что при group by в select могут быть только группируемые поля + агрегатные функции от других полей. т.е. max(time) полюбому!!!
    ιιlllιlllι унц-унц
  • Flare

    Сообщения: 284 Репутация: N Группа: Кто попало

    Spritz Янв. 31, 2012, 4:07 п.п., спустя 4 часа 29 секунд

    4млн записей с реального проекта где их на генерировали посетители или это ты сам по добавлял?
    Меня всегда интересовало чем думают, когда на большие проекты пускают духов без присмотра. такие сайты это же далеко не уровень корпоративных сайтов, визиток или интернет магазинов.
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz Янв. 31, 2012, 4:15 п.п., спустя 8 минут 48 секунд

    Меня всегда интересовало чем думают, когда на большие проекты пускают духов без присмотра.

    это да… тоже задаюсь вопросом
    Сапожник без сапог

Пожалуйста, авторизуйтесь, чтобы написать комментарий!