Я хочу получить запись, основанную на самом высоком балле и минимальном затраченном времени
SELECT user.id, user.first_name, user.last_name, quiz.id, quiz.name, user_quiz_history.score, user_quiz_history.time_taken
FROM user_quiz_history
JOIN user ON user.id = user_quiz_history.user_id
JOIN quiz ON quiz.id = user_quiz_history.quiz_id WHERE score =
(SELECT MAX(score)
FROM user_quiz_history
WHERE quiz_id = $id)
GROUP BY quiz_id
ORDER BY quiz_id dESC
С помощью этого запроса я получаю ожидаемый результат, но только с MAX (оценка).
Таместь определенные сценарии, в которых оценки равны, поэтому я должен дифференцировать на основе меньшего времени.
В этом случае он выбирает 1-ую запись из двух записей, имеющих одинаковый счет, но разное time_taken.