ホームページ > データベース > mysql チュートリアル > UNION と組み合わせた複数の SELECT クエリの結果を並べ替える方法

UNION と組み合わせた複数の SELECT クエリの結果を並べ替える方法

Barbara Streisand
リリース: 2025-01-11 07:12:41
オリジナル
418 人が閲覧しました

How to Order Results from Multiple SELECT Queries Combined with UNION?

SELECT クエリと UNION クエリを組み合わせた結果の並べ替え

SELECT を使用して複数の UNION クエリを結合すると、結果のデータセットをどのように並べ替えるかという共通の課題が生じます。 この問題とその解決策を見てみましょう。

チャレンジ

さまざまなテーブルからデータを取得する場合、または SELECT で結合された複数の UNION ステートメントを使用する場合、特定の列の並べ替え順序を達成するのは難しい場合があります。

詳しい説明

次のシナリオについて考えてみましょう:

SELECT id, name, age
FROM Student
WHERE age < 20
UNION
SELECT id, name, age
FROM Student
WHERE age >= 20;
ログイン後にコピー

このクエリは、Student テーブル内の 2 つの異なるグループからデータを選択します。 ただし、どちらかの ORDER BY name ステートメント内に単純な SELECT 句を配置しても、結合された結果は正しく並べ替えられません。

解決策

正しいアプローチは、ORDER BY 文のUNION 句を適用することです。 次のクエリは適切な方法を示しています:

SELECT id, name, age
FROM Student
WHERE age < 20
UNION
SELECT id, name, age
FROM Student
WHERE age >= 20
ORDER BY name;
ログイン後にコピー

これにより、ORDER BY 句が UNION 操作によって生成された完全なデータセットに対して動作し、目的の並べ替えられた出力が保証されます。

以上がUNION と組み合わせた複数の SELECT クエリの結果を並べ替える方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
関連するチュートリアル
人気のおすすめ
最新のコース
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート