MatsuoTech

技術メモとひとりごと。

UNIONってどう使うんすか

あーなんか、SELECT文を複数投げてガサッっと取ってくるやつだよなー
くらいの認識だったので、調べる。

サンプルテーブル
Book Genre

  • UNION
    union
    違うテーブルの値を同じテーブルかのように扱える。 重複は取得されない。

  • UNION ALL
    union all
    重複も表示される。
    こっちの方がパフォーマンスがいいらしい。

  • 取ってくるカラムの数が違う場合
    ERROR
    エラりんちょである。

各SELECTでWHEREやORDER BYも使えるらしい。
GROUP BYはSELECTでラッピングしてあげれば使えるっぽい

SELECT n FROM (
  SELECT a.b AS n FROM a
    union
  SELECt c.d AS n FROM c 
) as e
GROUP BY  n

みたいな感じ。

正直、RDBMSRDBMSしててくれたらあんまり使うことないのにな…と思ったり、。