En utilisant PHP et MySQL, existe-t-il un moyen d'utiliser un ORDER BY différent pour chacune des déclarations SELECT dans un UNION ?
SELECT * FROM the_table WHERE color = 'blue' ORDER BY price ASC LIMIT 5
UNION ALL
SELECT * FROM the_table WHERE color = 'red' ORDER BY RAND() LIMIT 10
La déclaration ci-dessus ne fonctionne pas. Il semble que vous ne puissiez effectuer un ORDER BY que sur le jeu de résultats final. Existe-t-il un moyen d'effectuer un ORDER BY sur le premier SELECT puis un ORDER BY différent sur le second SELECT en utilisant UNION ?