UNION を使用した結合された SELECT ステートメントの結果の並べ替え
UNION
演算子は、複数の SELECT
ステートメントの結果を結合します。 最終的な結果セットを単一の ORDER BY
句で順序付けすることを期待するかもしれませんが、これは直接サポートされていません。 ORDER BY
句は、結合された結果セット全体に適用する必要があります。
正しいアプローチは次のとおりです:
<code class="language-sql">SELECT id, name, age FROM Student WHERE age < 20 UNION SELECT id, name, age FROM Student WHERE age >= 20 ORDER BY age;</code>
最後の ORDER BY age
ステートメントの後に SELECT
を配置すると、統合出力に並べ替えが適用され、すべての行が age
列ごとに正しく順序付けされます。 これにより、両方のクエリのデータがマージされた後に適切な順序が確保されます。
以上がUNION と組み合わせた複数の SELECT ステートメントの結果を並べ替えるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。