Группировка последних записей - MySQL

Узнай цену своей работы

Формулировка задачи:

Есть таблица coins. В ней поля id,account, datetime, balance. На каждый аккаунт много записей с разным временем и балансом. Нужно вывести по 1 записи на аккаунт, где datetime является максимальным (последняя запись каждого аккаунта)

Решение задачи: «Группировка последних записей»

textual
Листинг программы
SELECT * FROM (
  SELECT * FROM `coins` ORDER BY `datetime` DESC
) `tmp`
GROUP BY `account`

Объяснение кода листинга программы

Код выполняет группировку последних записей по полю «account» из таблицы «coins».

  1. SELECT * FROM coins ORDER BY datetime DESC — выборка всех записей из таблицы «coins» и сортировка их по полю «datetime» в порядке убывания.
  2. (SELECT * FROM coins ORDER BY datetime DESC) tmp — создание временной таблицы с тем же набором данных, что и в первом пункте.
  3. GROUP BY account — группировка записей по полю «account».

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 3.692 из 5
Похожие ответы