ふりかえり

筆者
本記事は、SQLの基本、実務使用例編になります。
SQLの基礎に関しましては、
【初学者必見!】SQLの超基礎編の記事をご覧くださいませ。

A子
本編に入ります!
UNIONとは?
UNION は、複数のSELECT文の結果を1つにまとめるために使うSQLの構文です。
たとえば、
- 「東京の社員一覧」
- 「大阪の社員一覧」
この2つをまとめて、「全国の社員一覧」として表示したいときに UNION を使います。
注意点
重複を残したい場合は UNION ALL を使います。
結合する SELECT 文の 列の数、型、順番が一致している必要があります。
デフォルトでは、重複行は削除されます。
実務レベルの使用例を見ていこう!

筆者
実際に、SQLを使用してデータを確認していきましょう。
SQLに関しては以下を使用して解説していきます。
create table文、select文、insert文、update文、delete文、
drop table文、につきましては、過去にアップロードした
【初学者必見!】SQLの超基礎編の記事をご覧くださいませ。

A子
目次の、「ふりかえり」のところにそれぞれの記事のリンクが
貼ってあるよ!
または、サイドバーのカテゴリーにSQLがあるから、そちらからでも
参照できます!
Oracle Live SQLでSQLの挙動確認していきます。
今回、実行するSQLの一覧
CREATE文(テーブル作成)
create table tokyo_employees (
employee_id number,
name varchar2(100)
);
create table osaka_employees (
employee_id number,
name varchar2(100)
);
INSERT文(データ挿入)
insert into tokyo_employees values (1, '山田');
insert into tokyo_employees values (2, '佐藤');
insert into osaka_employees values (3, '鈴木');
insert into osaka_employees values (4, '佐藤');
UNION
SELECT + UNION(重複行を削除)
select name from tokyo_employees
union
select name from osaka_employees;

UNION ALL
select name from tokyo_employees
union all
select name from osaka_employees;

どっちを使えばいいの?
| 使いたい場面 | 使うもの |
|---|---|
| 重複を消して、スッキリ表示したい | UNION |
| データの正確な件数を見たい、早くしたい | UNION ALL |
※ UNION は重複チェックがある分、UNION ALL より処理が遅いことがあります。
覚え方のコツ
🔸 ALL が付いてる → 全部出す(重複含む)
🔸 ALL がない → 重複は除く
まとめ

筆者
union、union allについて解説しました。
次回もお楽しみに!










コメント