質問: MySQL において、 `UNION ALL` を利用する際、 `ORDER BY` がない場合は、基本的に UNION の順番に要素が帰ってくるかと思います。 ### 質問 * MySQL ないし SQL の仕様として、 `UNION ALL` の集合たちは、 UNION の順番に要素を返すことを期待しても良いのでしょうか? * それとも、とある条件(ストレージエンジン、 etc) を満たす場合では、UNION ALL のそれぞれの要素が入り乱れて取得されるのでしょうか?
回答: MySQLのリファレンスには順序保証の記載がないので保証はされないと思います。ORDER BYをつけるべきです。 (何度テストしても問題の無い結果が得られることはよくあります)