小学生でもわかるSQLのテーブル結合【SQL講座③】

だれでもエンジニア / 山浦清透
4 Mar 202111:49

Summary

TLDRこのビデオは、SQLのテーブル結合の種類と使い方について、小学生でもわかるように解説しています。インナージョインとアウタージョインの違い、集計時の注意点などを丁寧に説明していて、初心者向けの良い入門動画です。コメントでフィードバックいただけると嬉しいそうです。

Takeaways

  • 😃 inner joinはテーブルの共通部分のデータを取得
  • 😆 outer joinは全データを残しつつ、条件に合うデータも取得
  • 🤔 joinをすると思わぬところで集計ミスが発生することがある
  • 🧐 テーブル名やカラム名が競合する場合はテーブル名を前につける
  • 😯 outer joinのほうが余計なデータも含めた全データが取れる
  • 😀 inner joinのほうがふつうによく使う
  • 🤨 joinの種類にinner joinとouter joinがある
  • 🎉 SQLではjoinが必須中の必須
  • ⛑ 複数テーブルの情報を一発で取得できる
  • 💡 共通の軸となるデータを基にテーブルを結合する

Q & A

  • スクリプトで紹介されているテーブルは何ですか?

    -スクリプトで紹介されているテーブルは2つあります。1つ目はマーシャンずで火星人の情報が入っているテーブル、2つ目はhistoryずで惑星への渡航履歴が入っているテーブルです。

  • テーブルを結合する方法として紹介されているのは何ですか?

    -スクリプトでは、テーブルを結合する方法としてJOINを使用することが紹介されています。共通のデータをキーとして2つのテーブルをつなげることができます。

  • INNER JOINとOUTER JOINの違いは何ですか?

    -INNER JOINはテーブルの共通部分のデータを取得します。OUTER JOINはテーブルの全データと結合条件に合うデータを取得します。データがない場合も残します。

  • なぜJOINを使うと集計の際に数値のバグが起きるのですか?

    -JOINでテーブルを結合すると、結合条件にマッチしないレコードは結果から外れてしまうため、レコード数が変わってしまい集計ミスが起きる場合があるからです。

  • 集計ミスを防ぐにはどうすればよいですか?

    -集計ミスを防ぐためにはLEFT OUTER JOINを使うことで、結合条件にマッチしないレコードも結果に含めることができます。全データが残るようにすることが大切です。

  • テーブル名が被る場合の対策は何ですか?

    -テーブル名が被る場合は、カラム名の前にテーブル名を prefix として付けることで、それぞれのテーブルのカラムであることを明示できます。エラーを防げます。

  • 火星人のデータを取り出すSQLはどう書けばいいですか?

    -火星人の名前と渡航先のデータを取り出すためには、SELECT m.name, h.planet FROM テーブル名 のようにそれぞれのテーブルを指定する必要があります。

  • 渡航歴のない火星人のデータも表示するにはどうすればいいですか?

    -渡航歴のない火星人のデータを表示するには、OUTER JOINを使う必要があります。LEFT OUTER JOINを使うことで、渡航歴がない場合も火星人のデータは表示されます。

  • 結合するテーブルの条件はどこで指定するのでしょうか?

    -結合するテーブルの条件はINNER JOINやOUTER JOINの後にONで指定します。共通のカラムを指定することでテーブルを関連付けます。

  • JOINで注意が必要なポイントは何でしょうか?

    -JOINでは結合条件にマッチしないレコードが結果から消えてしまうことに注意が必要です。集計の際など数値のバグが起きる可能性があるため、OUTER JOINを使う等の対策が必要です。

Outlines

plate

This section is available to paid users only. Please upgrade to access this part.

Upgrade Now

Mindmap

plate

This section is available to paid users only. Please upgrade to access this part.

Upgrade Now

Keywords

plate

This section is available to paid users only. Please upgrade to access this part.

Upgrade Now

Highlights

plate

This section is available to paid users only. Please upgrade to access this part.

Upgrade Now

Transcripts

plate

This section is available to paid users only. Please upgrade to access this part.

Upgrade Now
Rate This

5.0 / 5 (0 votes)

Do you need a summary in English?