mysql 結合クエリ (左結合、右結合、内部結合)

mysql 結合クエリ (左結合、右結合、内部結合)

1. MySQLの一般的な接続

  • INNER JOIN (内部結合、または等価結合): 2 つのテーブル内の一致するフィールドを持つレコードを取得します。
  • LEFT JOIN: 右側のテーブルに対応する一致するレコードがない場合でも、左側のテーブルのすべてのレコードを取得します。
  • RIGHT JOIN: LEFT JOIN の反対で、左側のテーブルに対応する一致するレコードがない場合でも、右側のテーブルのすべてのレコードを取得するために使用されます。
mysql> name_address から * を選択します。
+----------+------+----+
| 住所 | 名前 | ID |
+----------+------+----+
| 北西路 | 張三 | 1 |
| 北西二路 | 李四 | 2 |
| 北西三路 | 王武 | 3 |
+----------+------+----+
3行セット

mysql> name_age から * を選択します。
+-----+--------+----+
| 年齢 | 名前 | ID |
+-----+--------+----+
| 18 | 張三 | 1 |
| 20 | 王武 | 2 |
| 21 | 通行人 | 3 |
+-----+--------+----+
3行セット

1. 内部結合

INNER JOIN は一般的なテーブル結合クエリと一致しており、クエリ方法はコンマで区切られます。

mysql> SELECT a.`name`,a.age,b.address FROM name_age a INNER JOIN name_address b WHERE (on) a.`name`=b.`name`;
+------+-----+-----------+
| 名前 | 年齢 | 住所 |
+------+-----+-----------+
| 張三 | 18 | 北西路 |
| 王武| 20 | 北西三路|
+------+-----+-----------+
2行セット

2. 左結合

左のデータ表をご参照ください。

mysql> SELECT a.`name`,a.age,b.address FROM name_age a left JOIN name_address b on
 a.`名前`=b.`名前`;
+--------+-----+-----------+
| 名前 | 年齢 | 住所 |
+--------+-----+-----------+
| 張三 | 18 | 北西路 |
| 王武| 20 | 北西三路|
| 通行人| 21 | NULL |
+--------+-----+-----------+
3行セット

3. 右結合

LEFT JOINの反対、つまり右側のデータが基準として使用される

mysql> SELECT b.`name`,a.age,b.address FROM name_age a right JOIN name_address b on a.`name`=b.`name`;
+------+------+----------+
| 名前 | 年齢 | 住所 |
+------+------+----------+
| 張三 | 18 | 北西路 |
| 王武| 20 | 北西三路|
| 李思 | NULL | 北西二路 |
+------+------+----------+
3行セット

上記は、MySQL 接続クエリの情報のまとめです。ご質問がある場合は、メッセージを残して話し合い、一緒に進歩することができます。お読みいただきありがとうございます。皆様のお役に立てれば幸いです。このサイトをサポートしていただきありがとうございます。

以下もご興味があるかもしれません:
  • MySQLの左結合と内部結合について簡単に説明します
  • MYSQL 左結合、右結合、内部結合の詳細な説明と違い
  • mysql 左結合、右結合、内部結合
  • MySQL の内部結合、左結合、右結合クエリの詳細な説明

<<:  簡潔なReactコンポーネントを書くためのヒント

>>:  Linux で指定されたフォルダの各サブフォルダ内のファイル数を表示する

推薦する

数千万のMySQLデータ量を素早くページ分割する方法

序文バックエンド開発では、一度に大量のデータがロードされ、メモリやディスク IO のオーバーヘッドが...

CSS最適化スキルの自己実践体験

1. CSS スプライトを使用します。利点は、CSS で使用される小さな画像を 1 つの大きな画像に...

Web プロジェクト開発 JS 機能の手ぶれ補正とスロットリングのサンプル コード

目次安定導入手ぶれ補正シーン1(マウスの動き込み)手ぶれ補正シーン2(キーボードのキー)関数のスロッ...

Linuxサーバー間のリアルタイムファイル同期の実現

使用シナリオ既存のサーバー A と B の場合、サーバー A の指定されたディレクトリ (たとえば、...

MySQL5.7+ MySQL Workbenchのインストールと設定方法のグラフィックチュートリアル(MAC)

この記事では、主にMACオペレーティングシステムでのMySQL5.7とMySQLWorkbenchの...

Tencent Cloud Server Centosにデータディスクをマウントする方法

まず、ハードディスクデバイスにデータディスクがあるかどうかを確認します # まずfdisk -lを実...

Docker ディスク領域クリーニングのソリューション

少し前に、docker ディスク容量が小さすぎてデータを書き込めないという問題が発生しました。理由は...

HTML 選択オプション デフォルトの選択方法

オプションに属性 selected = "selected" を追加すると、それ...

Zabbix を使用して Nginx/Tomcat/MySQL を監視する方法の詳細なチュートリアル

目次ZabbixはNginxを監視するZabbixはTomcatを監視するZabbixはMySQLを...

MacBook 向け Python 3.7 インストール チュートリアル

MacBookにpython3.7.0をインストールする詳細な手順は、参考までに記録されています。具...

Vueフォームで画像を処理する方法

質問: Vue にブログ投稿をアップロードするためのフォームがあり、タイトル、本文、説明、スニペット...

DockerにMySQL 8.0をインストールする方法

環境: MacOS_Cetalina_10.15.1、Mysql8.0.18、Docker_2.0....

MySQL で distinct メソッドを使用する詳細な例

明確な意味: distinctive は、一意のレコードの数を照会するために使用されます。つまり、d...

XHTMLタグには終了タグがある

<br />オリジナルリンク: http://www.dudo.org/article....

CSSの2つの特別な値は、カスケードの継承と初期メソッドを制御するために使用されます。

カスケードを制御するために CSS の任意のプロパティに割り当てることができる特別な値が 2 つあり...