SQLで複数のSELECTで問い合わせた結果を連結したいという場合は集合演算子関数と言われる「UNION」や「UNION ALL」演算子を使用することで取得可能となります。
イメージ図
- UNIONは重複行を削除して取得するので「A & C」を取得出来ます。
- UNION ALLは重複行を含めて取得するので「A & B & C」を取得出来ます。
サンプルテーブル
UNIONの使用例
サンプルテーブル「goods」をUNIONで連結して取得するサンプルとなります。
- SQL(クエリー)
123SELECT id,name,type_code FROM goods WHERE name = '商品A'UNIONSELECT id,name,type_code FROM goods WHERE type_code = '101'
- 出力結果
UNION ALLの使用例
サンプルテーブル「goods」をUNION ALLで連結して取得するサンプルとなります。
- SQL(クエリー)
123SELECT id,name,type_code FROM goods WHERE name = '商品A'UNION ALLSELECT id,name,type_code FROM goods WHERE type_code = '101'
- 出力結果