左結合と右結合: 違いと比較

結合により、単独で使用することも、互いに組み合わせて使用​​することもできるテーブルが生成されます。 したがって、これらの結合とそれらの違いを理解して、特定の結合を決定し、特定のケースで右または左のどちらを選択する必要があるかを判断することをお勧めします。

主要な取り組み

  1. 左結合には、左テーブルのすべてのレコードと右テーブルの一致したレコードが含まれ、一致しない行には NULL 値が入力されます。
  2. 右側の結合には、右側のテーブルのすべてのレコードと、左側のテーブルの一致したレコードが含まれ、一致しない行には NULL 値が入力されます。
  3. 左結合と右結合は互いにミラーリングされたイメージであり、クエリ内のテーブルの順序に応じて入れ替えることができます。

左結合と右結合

左結合は、左側のテーブルのすべての行と、右側のテーブルの一致する行を返します。右側のテーブルに一致する行がない場合、結果には null 値が含まれます。 左結合と同じ右結合ですが、右テーブルのすべての行と、左テーブルの一致する行が返されます。

左結合と右結合

表の右側に一致はありませんが、 SQL LEFT は、左側のテーブルから受信したすべてのエントリを処理します。 これは、ON 句に含まれるテーブルの右側のエントリが 0 (ゼロ) の場合でも、結合によって、メイン テーブルのすべてのフィールド内に NULL を持つレコードが返されることを意味します。

また読む:  フリーウェアとシェアウェア: 違いと比較

一方、右側の結合では、左側のテーブルでも、SQL RIGHT が右側のテーブルからすべてのエントリを送受信します。

これは、右結合が、右テーブルからのすべてのデータと、テーブルから受け入れられた値を配信することを意味します。この操作に適合する結合述語が存在しない場合は NULL を返します。

比較表

比較のパラメータ左結合右参加
使用法複数のテーブルを接続し、左側のテーブルのすべてのレコードと、右側の一致する行を提供します。複数のテーブルを結合し、右側のテーブルからすべてのデータを配信し、左側のテーブルから最初に一致する行を配信します。
クエリの実行左結合を含むクエリの実装中、テーブルのすべてのエントリが最初に受信され、次にスタックド ループを使用して右テーブルの列値の一致するデータが取得され、NULL 値が他の一致しないデータに置き換えられます。右側の結合を含むクエリの実装中、右側のテーブルのすべてのデータが最初に取得され、その後、スタック ループを使用して左側のテーブルの列値の一致したレコードが収集されます。
結果セット右側のテーブルに一致するデータが見つからない場合、結果セットの値は NULL またはゼロになります。左側のテーブルに一致するデータが見つからない場合、結果セットの値は NULL またはゼロになります。
同義語左外部結合右外部結合
構文列名を選択
FROM テーブル 1
左結合 table2
ON テーブル 1.列名 = テーブル 2.列名;
SELECT column_name(s)
FROM table1
正しい参加 table2
ON テーブル1.列名 = テーブル2.列名;
後で思い出せるように今すぐピン留めする
これを固定する

左結合とは

一致する値を含む列に応じて XNUMX つのデータベースのデータをマージするには、SQL で JOIN を使用します。 たとえば、クライアント データ (クライアント ID、最初に 、識別子など) と、特定の時間の注文データ (トランザクション ID、時間、クライアント ID、製品 ID など) を含む別のテーブル。

また読む:  MS SQL と MySQL: 違いと比較

Left Join の構文を見て、その有用性を正しく理解しましょう。

列名を選択

FROM テーブル 1

左結合 table2

ON テーブル 1.列名 = テーブル 2.列名

  1. 'SELECT' – データセットで表示したいカテゴリを選択することから始めます。
  2. 'FROM' – すべての情報を維持したいテーブルのデータを入力します。
  3. 'LEFT JOIN' – 言及されている XNUMX 番目のテーブルのデータを入力します。
  4. 'ON' – この句を使用して、テーブルを接続するために使用するフィールドを指定します。

一致する検索結果が複数ある場合、左側のテーブルの列が複製され、右側のテーブルから直接すべてのデータが含まれます。 一致するものが見つからない場合は、左側のテーブルの行を保持し、右側のテーブルの関連する列に NULL を挿入します。

右結合とは

率直に言うと、右の結合操作は左の結合と非常に似ており、正反対です。

右結合は、基本的に、RIGHT JOIN 句で指定されたテーブルからすべての行を取得しますが、FROM 句で指定されたテーブルからは対応する行のみを取得するという点で、左結合と非常によく似ています。

RIGHT JOIN の内容は、LEFT JOIN で接続された XNUMX つのテーブルのラベルを交換するだけで取得できるため、RIGHT JOIN はあまり使用されません。

LEFT JOIN と RIGHT JOIN は、RIGHT OUTER JOIN だけでなく、LEFT OUTER JOIN としても表現できることに留意してください。

Right Join の構文については、以下で詳しく説明します。 右結合と左結合の操作は同じですが、順序が逆です。

列名を選択
FROM テーブル 1
右結合テーブル2
ON テーブル 1.列名 = テーブル 2.列名

左結合と右結合の主な違い

  1. 左の結合句は、右の結合句よりも一般的に使用されます。
  2. 左結合の式は、一致するすべてのレコード + 左のテーブルの一致しないレコードですが、右結合の式は、すべての一致するレコード + 右のテーブルの一致しないレコードです。
参考情報
  1. https://www.tutorialspoint.com/sql/sql-left-joins.htm#:~:text=The%20SQL%20LEFT%20JOIN%20returns,matches%20in%20the%20right%20table.&text=This%20means%20that%20a%20left,of%20no%20matching%20join%20predicate.
  2. https://mode.com/sql-tutorial/sql-right-join/#:~:text=Right%20joins%20are%20similar%20to,names%20in%20a%20LEFT%20JOIN%20.

ドット1
XNUMXつのリクエスト?

私はあなたに価値を提供するために、このブログ記事を書くことに多大な努力を払ってきました. ソーシャルメディアや友人/家族と共有することを検討していただければ、私にとって非常に役立ちます. 共有は♥️

サンディープ・バンダリ
サンディープ・バンダリ

Sandeep Bhandari は、Thapar University (2006) でコンピューター工学の学士号を取得しています。 彼はテクノロジー分野で 20 年の経験があります。 彼は、データベース システム、コンピュータ ネットワーク、プログラミングなど、さまざまな技術分野に強い関心を持っています。 彼の詳細については、彼のウェブサイトで読むことができます バイオページ.

13のコメント

  1. SQL RIGHT JOIN は、示唆されているほどめったに使用されるとは思えません。より複雑なクエリでニッチな用途があります。

    • あなたの言いたいことは理解できますが、実際には SQL RIGHT JOIN が選択されることはそれほど多くありません。

  2. ここでの内容は具体的すぎるため、SQL に関する豊富な経験が不足している人にとっては特に役に立たないと思います。

  3. 完全な比較表は、2 つのタイプの結合を区別するのに非常に役立ちます。この記事は本当に啓発的です。

  4. 左結合と右結合の違いと、どのような状況でそれらを使用する必要があるかを理解することが非常に重要です。この記事はまさにそれを見事に達成しています。

コメントを残す

あなたのメールアドレスは公開されません。 必須フィールドは、マークされています *

後で読むためにこの記事を保存しますか? 右下のハートをクリックして自分の記事ボックスに保存!