Masalahnya adalah ini:fungsi agregat apa pun "tidak peduli" tentang sisa barisnyaJika bukan MIN tapi SUM, lebih mudah untuk dilihat...
Solusinya agak rumit, Anda harus melakukan sesuatu yang melibatkan LEFT JOIN dengan ketidaksetaraan :
SELECT u.username, l.timer AS intScore, l.hashtag
FROM
leaderboard l
INNER JOIN users u ON u.users_id = l.users_id
LEFT JOIN leaderboard l2 ON l.users_id = l2.users_id AND l2.timer < l.timer
WHERE
l2. users_id IS NULL
ORDER BY intScore ASC
Idenya adalah mendapatkan nilai terendah dengan melewatkan fungsi MIN dan mendapatkan seluruh baris
Memfilter berdasarkan tanggal (atau kolom/kriteria lain dalam hal ini) dari tabel papan peringkat, akan mengharuskan kita untuk memfilter setiap tabel yang kita gunakan. Sangat penting untuk memfilter tabel LEFT JOINed pada kondisi ON, jika tidak, kita menghilangkan efek filtering NULLs:
SET @date0 = '2018-01-01';
SELECT u.username, l.timer AS intScore, l.hashtag
FROM
leaderboard l
INNER JOIN users u ON u.users_id = l.users_id
LEFT JOIN leaderboard l2 ON l.users_id = l2.users_id AND l2.timer < l.timer AND l2.game_date >= @date0
WHERE
l.game_date >= @date0
l2.users_id IS NULL
ORDER BY intScore ASC
semoga membantu