Menu
Coddy logo textTech

UNION と UNION ALL

CoddyのSQLジャーニー「応用」セクションの一部。レッスン 16/27。

UNIONについては、Fundamentalsで学びました。これは2つの結果セットを積み重ねます。デフォルトでは重複を削除するため、追加のソート処理が必要になります。

SELECT name FROM authors
UNION
SELECT name FROM editors

UNION ALL も同じように積み重ねますが、重複を保持します。2つの側が同じ行を生成できないとわかっている場合や、各出現を実際にカウントしたい場合には、より高速で、ほとんどの場合これが望ましい方法です。

SELECT name FROM authors
UNION ALL
SELECT name FROM editors

両方の側で、同じ順序の同じ数の列を返し、互換性のある型でなければなりません。

challenge icon

チャレンジ

簡単

利用可能なテーブルと列:

  • online_ordersorder_noamount
  • retail_ordersticket_nototal

2つのテーブルは、異なる列名を使用して異なるチャネルの注文を記録しています。次の列を持つ、すべての注文をまとめた1つの一覧を返してください:

  • channel'online' または 'retail'
  • order_id:online の場合は order_no、retail の場合は ticket_no
  • amount:注文の合計(amount または total から取得)

すべての行を保持してください(重複排除はしません)。amount の降順で並べ替えてください。

REQUIRED OUTPUT FORMAT: [Your translated content here]

自分で試してみよう

-- 同じ3列に揃えた2つのSELECTをUNION ALLで結合
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

応用のすべてのレッスン

自分で練習してみよう: SQLプレイグラウンド