小学生でもわかる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

此内容仅限付费用户访问。 请升级后访问。

立即升级

Mindmap

plate

此内容仅限付费用户访问。 请升级后访问。

立即升级

Keywords

plate

此内容仅限付费用户访问。 请升级后访问。

立即升级

Highlights

plate

此内容仅限付费用户访问。 请升级后访问。

立即升级

Transcripts

plate

此内容仅限付费用户访问。 请升级后访问。

立即升级
Rate This

5.0 / 5 (0 votes)

您是否需要英文摘要?