Mysql の 2 つのテーブル間の結合クエリの 4 つの状況の概要

Mysql の 2 つのテーブル間の結合クエリの 4 つの状況の概要

一般的に言えば、より完全な結果を得るためには、2 つ以上のテーブルから結果を取得する必要があります。私は通常、select xxx,xxx from table1, table2 where table1.xxx=table2.xxx を使用します。私たちは通常、このような操作を実行します。実際、MySQL には結合操作という別の操作があります。たとえば、次の 2 つのテーブルがあります。

「Persons」テーブルを見てみましょう。

次に、「Orders」テーブルを見てみましょう。

上記の2つのテーブルをクエリに接続します

Persons.LastName、Persons.FirstName、Orders.OrderNo を選択
人物、注文から
ここで、Persons.Id_P = Orders.Id_P

結果セット:

JOINキーワードを使用して2つのテーブルからデータを取得する場合

Persons.LastName、Persons.FirstName、Orders.OrderNo を選択
人物から
INNER JOIN 命令
ON Persons.Id_P = Orders.Id_P
ORDER BY 人.姓

結果セット:

すると、内部結合は上記の通常のクエリと変わりません。

異なるSQL JOIN

  • JOIN: テーブルに少なくとも1つの一致がある場合に行を返します
  • LEFT JOIN: 右側のテーブルに一致するものがない場合でも、左側のテーブルのすべての行を返します。
  • 右結合: 左のテーブルに一致するものがない場合でも、右のテーブルのすべての行を返します。
  • FULL JOIN: いずれかのテーブルに一致する行を返します。

LEFT JOIN キーワード構文

「人物」テーブル:

「注文」テーブル:

Persons.LastName、Persons.FirstName、Orders.OrderNo を選択
人物から
LEFT JOIN 注文
ON Persons.Id_P=Orders.Id_P
ORDER BY 人.姓

結果セット:

SQL RIGHT JOIN キーワード

「人物」テーブル:

「注文」テーブル:

Persons.LastName、Persons.FirstName、Orders.OrderNo を選択
人物から
右結合注文
ON Persons.Id_P=Orders.Id_P
ORDER BY 人.姓

結果セット:

SQL FULL JOIN キーワード

「人物」テーブル:

「注文」テーブル:

FULL JOINの例

Persons.LastName、Persons.FirstName、Orders.OrderNo を選択
人物から
FULL JOIN 注文
ON Persons.Id_P=Orders.Id_P
ORDER BY 人.姓

結果セット:

要約する

以上がこの記事の全内容です。この記事の内容が皆様の勉強や仕事に何らかの参考学習価値をもたらすことを願います。123WORDPRESS.COM をご愛顧いただき、誠にありがとうございます。これについてもっと知りたい場合は、次のリンクをご覧ください。

以下もご興味があるかもしれません:
  • MySQL データベースの集計クエリと結合クエリ操作
  • MySQL初心者はグループ化や集計クエリの煩わしさから解放されます
  • MySQL ジョイントクエリ UNION と UNION ALL の使用法の紹介
  • MySQL マルチテーブルジョイントクエリ効率の詳細な分析と最適化
  • いくつかのMySQLジョイントクエリの一般的な説明
  • MySQL マルチテーブル共同クエリ操作例の分析
  • MySQL 集計クエリと結合クエリ操作の例

<<:  React構成サブルーティングの実装

>>:  CentOS7におけるKVM仮想化の基本管理の詳しい説明

推薦する

Navicat を使用して csv ファイルを MySQL にインポートする

この記事では、参考までに、Navicatを使用してCSVファイルをMySQLにインポートするための具...

Mac で Docker を使用して Oracle をデプロイする方法

Mac で Docker を使用して Oracle をデプロイする方法まずdockerをインストール...

VueでEchartsチャートの幅と高さの適応を実現する実践

目次1. インストールとインポート2. 手ぶれ補正機能を定義する3. チャートコードを描くinit ...

VirtualBox でのホストオンリー + NAT モードのネットワーク構成

VirtualBoxのHost Only+NATモードのネットワーク構成は参考用です。具体的な内容は...

Docker で MySQL 接続と設定ファイルの最大数を変更する

1. MySQLイメージを見つける ドッカーps 2. ミラーmysqlイメージを入力する dock...

シーケンス関数を実装する MySQL コード

MySQLはシーケンス関数を実装する1. シーケンスレコードテーブルを作成する テーブル `sys_...

メンテナンスしやすい CSS コードを書くための 5 つのガイドライン

1. スタイルシートの先頭にコメント ブロックを追加して、スタイルシートの作成日、作成者、タグ、その...

Vueにログイン認証傍受機能を設置するアイデアを詳しく解説

目次1. 解決策2. サーバーから返されたトークンをブラウザに保存する3. リクエストにアクセス権限...

インスタンス化されたオブジェクトパラメータによるMySQLクエリ例の説明

この記事では、オブジェクト パラメータをインスタンス化して MySQL でデータをクエリする方法を紹...

HTMLフレームワーク_Powernode Javaアカデミー

1. フレームワークブラウザのドキュメント ウィンドウには 1 つの Web ページ ファイルしか表...

JavaScript の基礎: エラーキャプチャメカニズム

目次序文エラーオブジェクト投げる試して…捕まえて…最後に最終ルールトライ/キャッチパフォーマンスウィ...

CentOS6.8 は cmake を使用して MySQL5.7.18 をインストールします。

オンライン情報を参考に、cmakeを使用してCentOS6.8サーバーにMySQL5.7.18をイン...

製品の拡大鏡効果を実現する JavaScript

この記事では、参考までに、製品拡大鏡を実装するためのJavaScriptの具体的なコードを紹介します...

DockerコンテナにRedisをデプロイする手順の紹介

目次1 つの Redis 設定ファイル2 Dockerコマンドの開始3 docker-compose...