ホームページ > データベース > SQL > 左結合、右結合、内部結合、完全外部結合の違いは何ですか?

左結合、右結合、内部結合、完全外部結合の違いは何ですか?

青灯夜游
リリース: 2020-07-16 11:31:49
オリジナル
64657 人が閲覧しました

違い: 左結合は、右テーブルの結合フィールドと等しい左テーブルのすべてのレコードを返します。右結合は、右テーブルのすべてのレコードと、左テーブルの結合フィールドと等しいレコードを返します。テーブル; 内部結合 2 つのテーブルの等しい結合フィールドを持つ行のみを返します。完全外部結合は、左右のテーブルのすべてのレコードと、左右のテーブルの等しい結合フィールドを持つレコードを返します。

左結合、右結合、内部結合、完全外部結合の違いは何ですか?

左結合 (左結合、左外部結合): 右のテーブルの結合フィールドと等しい、左のテーブルのすべてのレコードを返します。

右結合 (右結合、右外部結合): 左のテーブルの結合フィールドと等しい、右のテーブルのすべてのレコードを返します。

内部結合 (等価結合または内部結合): 2 つのテーブル内の等しい結合フィールドを持つ行のみを返します。

完全結合 (完全外部結合): 左右のテーブルの結合フィールドに等しい、左右のテーブルのすべてのレコードを返します。

例:

A table

id 名前

1 Xiao Wang

2 Xiao Li

3

#内部結合: (2 つのテーブルから一致する行のみを表示できます)

select a.name,b.job from A a  inner join B b on a.id=b.A_id
ログイン後にコピー

1 つのレコードのみを取得できます:

小李  老师
ログイン後にコピー

左結合: (左側のテーブルは制限されていません)

select a.name,b.job from A a  left join B b on a.id=b.A_id
ログイン後にコピー
3 つのレコード:

  小王  null
 
  小李  老师
 
  小刘  null
ログイン後にコピー
右結合: (右側のテーブルは制限されていません)

select a.name,b.job from A a  right join B b on a.id=b.A_id
ログイン後にコピー

2 つのレコード:

  小李  老师
 
  null  程序员
ログイン後にコピー
完全外部結合: (左右のテーブルに制限なし)

select a.name,b.job from A a  full join B b on a.id=b.A_id
ログイン後にコピー

4 つのデータ

  小王  null
 
  小李  老师
 
  小刘  null
 
  null  程序员
ログイン後にコピー
注: SQL では、外部結合には、左結合と右結合、完全外部結合、内部結合とも呼ばれる等価結合 (内部結合) が含まれます。

関連する推奨事項: 「SQL チュートリアル

以上が左結合、右結合、内部結合、完全外部結合の違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート