मैं कोड-इग्निटर नहीं जानता, लेकिन मूल रूप से आप चाहते हैं कि यह पहले संघ करे और फिर पूरे सेट पर ऑर्डर लागू करे। इसके लिए एक सबक्वायरी की आवश्यकता होगी। इसका परिणाम निम्न SQL क्वेरी में होना चाहिए:
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
आशा है कि यह आपकी कुछ मदद करेगा।