Mysql
 sql >> Base de données >  >> RDS >> Mysql

obtenir trois enregistrements dans l'ordre décroissant de chaque catégorie en utilisant codeigniter

Je ne connais pas le code-igniter, mais en gros, vous voulez qu'il fasse d'abord l'union, puis applique l'ordre par sur l'ensemble de l'ensemble. Cela nécessiterait une sous-requête. Cela devrait aboutir à la requête SQL suivante :

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

J'espère que cela vous aidera un peu.