Выборка из двух таблиц максимальных и уникальных значений - MySQL
Формулировка задачи:
Друзья, здравствуйте! Бешусь с этой проблемой несколько дней.
Что мне нужно:
Есть две таблицы (они на скриншоте).
Нужно выбрать МАКСИМАЛЬНЫЕ значения поля reat и УНИКАЛЬНЫЕ значение поля iduser из таблиц user и reating. Поле iduser в таблицы reating, - это ключи из таблицы user поля id.
То есть идея такая, что бы каждому пользователю соответствовал максимальный его результат, а остальные отбрасывались.
В общем мне нужна на выходе такая таблица:
Подскажите пожалуйста, какой запрос нужно выполнить, чтобы объединить эти таблицы и получить на выходе то, что мне нужно?
Решение задачи: «Выборка из двух таблиц максимальных и уникальных значений»
textual
Листинг программы
SELECT u.id, t.tm 'время', t.reat 'рейтинг', concat(u.name, ' ', u.surnm) 'пользователь' FROM usr u JOIN ( SELECT a.reat reat, a.tm, a.iduser FROM reating a RIGHT JOIN ( SELECT r.iduser, MAX(r.reat) rate FROM reating r GROUP BY r.iduser ) b ON b.iduser = a.iduser AND b.rate = a.reat ) t ON t.iduser = u.id;
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д