SQL の左結合と右結合の原理と例の分析

SQL の左結合と右結合の原理と例の分析

テーブルが 2 つあり、テーブル A のレコードがテーブル B に存在しない可能性があります。

  • 左結合: 左側に焦点を当てます。右側がない場合、空になります。
  • 右接続: 右側に焦点を当てます。左側がない場合、空になります。
  • 内部結合: 交差を返す

例えば:

学生テーブル

id名前クラスID
122 1
220 1
3ファン20 2
430 2
522

クラステーブルc

id名前合計
1新入生30
2 2年生15
3ジュニアイヤー40

上記の表では、表 s のレコード番号 5 が表 c に見つかりません。

1. 左結合: 左結合の左側がメインテーブルとなり、対応するセカンダリテーブルがない場合は NULL が表示されます。

学生 s から s.`name`,s.`class_id` を選択し、クラス c を s.`class_id`=c.`class_id` として LEFT JOIN します。

結果


名前クラスID
1
1
ファン2
2
(NULL)

2. 右結合: 右結合の右側がプライマリテーブルであり、対応するセカンダリテーブルがない場合は NULL が表示されます。

学生 s から s.`name`,s.`class_id` を選択し、クラス c を s.`class_id`=c.`class_id` として右結合します。

結果


名前クラスID
1
1
ファン2
2
(NULL) (NULL)

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • MySQL 8.0.18 ハッシュ結合は左/右結合をサポートしていません 左と右の結合の問題
  • mysql 結合クエリ (左結合、右結合、内部結合)
  • SQL の 4 種類の結合 - 左外部結合、右外部結合、内部結合、完全結合の詳細な説明
  • MySQL テーブル LEFT JOIN 左結合と RIGHT JOIN 右結合の例のチュートリアル
  • MySQL の左内部結合と右内部結合の使用例
  • SQL 結合の 4 つのタイプ (左外部結合、右外部結合、内部結合、完全結合) に関する詳細な理解
  • SQL 左結合と右結合の使用に関するヒント (左結合と右結合)
  • mysql 左結合、右結合、内部結合
  • 3 つのテーブルを左結合するクエリの SQL ステートメントの記述方法

<<:  Tomcatの起動が遅い問題を素早く解決、超簡単

>>:  React プロジェクトにおける axios カプセル化と API インターフェース管理の詳細な説明

推薦する

Linux ネットワークプログラミングにおけるソケットオプションの実装

ソケットオプション機能機能: ソケットファイル記述子の属性の読み取りと設定に使用されるメソッド #i...

さまざまなMySQLインデックスの使用方法の詳細な説明

1. 遅いクエリログ1.1 MySQL ログの種類ログは、データベースの操作や、ユーザーがデータベー...

MySQL マルチテーブルクエリの詳細な説明

いつも、気づかないうちに時間というのは驚くほど早く過ぎていきます。小暑が過ぎ、中暑に突入しました。太...

Centos7にGitLabサーバーをインストールして展開する方法

私はここでCentOS 7 64ビットシステムを使用しています。CentOS 64ビットシステムを試...

Vue+Websocketはチャット機能を実装するだけです

この記事では、チャット機能を簡単に実装するためのVue+Websocketの具体的なコードを参考まで...

XHTML 入門チュートリアル: XHTML Web ページ画像アプリケーション

<br />適度に画像を追加すると、Web ページがより美しくなります。 画像タグ &l...

Js でオブジェクトのディープ オブジェクトを安全に取得するメソッドの例

目次序文文章パラメータ例Lodash 実装:トーキー機能: castPath関数: stringTo...

HTML フォームとフォーム内部タグの使用

コードをコピーコードは次のとおりです。 <html> <ヘッド> <t...

MySQL で null 値と空文字 ('') を区別する

日常の開発では、データベースの追加、削除、変更、クエリが一般的に行われるため、Mysql で NUL...

Vue+express+Socketでチャット機能を実現

この記事では、チャット機能を実現するためのVue+express+Socketの具体的なコードを参考...

WeChatミニプログラムの開発をスピードアップするためのヒント

1. app.jsonを使用してページを作成する私たちの通常の開発習慣によれば、新しいページを作成す...

Docker を使用した SQL Server の実行の実装

現在、.net Core はクロスプラットフォームであり、誰もが Linux と Docker を使...

Linux ファイルディレクトリ管理コマンドの概要

タッチコマンドこれには 2 つの機能があります。1 つは、既存のファイルの時間タグを現在のシステム時...

Tomcat マルチインスタンスの展開と構成の原則

1. ファイアウォールをオフにし、Tomcatのインストールに必要なソフトウェアパッケージを/opt...

Mysql のいくつかの複雑な SQL ステートメント (重複行のクエリと削除)

1. 重複行を見つける blog_user_relation a から * を選択 WHERE (...