Saya tidak tahu penyala kode, tetapi pada dasarnya Anda ingin itu melakukan penyatuan terlebih dahulu dan kemudian menerapkan pesanan di seluruh rangkaian. Ini akan membutuhkan subquery. Ini akan menghasilkan kueri SQL berikut:
select * from
((SELECT * FROM media m INNER JOIN category c ON m.category_id = c.id )
UNION ALL
(SELECT * FROM media m INNER JOIN category c ON m.category_id = c.id)) T
ORDER BY m.media_files DESC LIMIT 3
Semoga bisa membantu Anda.