Ini BUKAN sesuatu yang ingin Anda lakukan dalam satu kueri. Pisahkan saja, satu kueri untuk setiap kolom. Dalam situasi yang tepat (alias dengan indeks yang tepat dan jenis kolom yang tepat), MySQL sebenarnya dapat mengoptimalkan kueri ini dengan hubungan arus pendek sehingga tidak perlu memindai seluruh tabel, ia hanya mengeluarkan 5 nilai teratas dan selesai.
SELECT column1 FROM table ORDER BY column1 DESC LIMIT 5
SELECT column2 FROM table ORDER BY column2 DESC LIMIT 5
etc
Jika Anda mencoba untuk menyatukan semuanya menjadi satu kueri raksasa dan kludgy, Anda hanya akan berhasil meyakinkan pengoptimal untuk menyerah dan memindai ulang seluruh tabel 50 kali dan kemudian menggunakan 50 tabel temp dan mungkin beberapa penyortiran file untuk ukuran yang baik. Jadi, kecuali tabel Anda memiliki sekitar 10 baris di dalamnya (yang jelas tidak), 50 kueri terpisah akan selalu lebih cepat.