Det er virkelig enkelt:Brug UNION ALL
i stedet for UNION
.
SELECT * FROM (
SELECT name,total,rate
FROM business b
WHERE rate > 100
ORDER BY total DESC) x
UNION ALL
SELECT * FROM (
SELECT name,total,rate
FROM business b
WHERE rate <= 100
ORDER BY rate ASC) y
UNION ALL bevarer orden som kodet.
UNION fjerner dubletter og garanterer ikke orden. De fleste databaser sorterer faktisk outputtet (for at gøre duplikatdetektion lettere).