SQL
 Computer >> コンピューター >  >> プログラミング >> SQL

SQL左結合:完全ガイド

SQL LEFT JOINは、SQL結合の一種です。この結合は、指定された「左」列のすべてのテーブルと、「右」列の特定の条件に一致する対応する行を返します。

多くの場合、 SQLでクエリを記述している場合 、1つのテーブルに集中するだけで済みます。ただし、2つ以上のテーブルを同時にクエリする必要がある状況は数多くあります。この状況では、両方のテーブルの情報を組み合わせた結果を作成する必要があります。

SQL 、これは結合と呼ばれます。結合を使用すると、複数のテーブルから情報を取得し、その結果を結合されたテーブルに結合できます。たとえば、従業員と部門のテーブルを結合して、各従業員の部門名を取得できます。

このチュートリアルでは、 SQLの1つのタイプの結合を分類します。 : LEFT JOIN LEFT JOINの場所について説明します 便利であり、 SQLでそれらをどのように使用できるか クエリ。

SQL LEFT JOIN

SQL LEFT JOIN クエリで指定された「左」テーブルからすべてのレコードを返します。条件に基づいて、このテーブルの値を「正しい」テーブルに一致させます。 「左」テーブルのすべてのレコードに加えて、一致するものが返されます。 _LEFT JOIN_sは、SQL外部結合の一種です。

たとえば、左結合を使用して、各従業員の部門名のリストを取得できます。これにより、部門が割り当てられていない場合でも、すべての従業員を表示できます。

LEFT JOINの基本構文 操作は次のとおりです。

SELECT Table1.Column1, Table2.Column1
FROM Table1
LEFT JOIN Table2
ON Table1.Column2 = Table1.Column2;

結合はSQLSELECTステートメントから始めます。 FROMステートメントのテーブルは、「左」テーブルです。次に、 LEFT JOINを使用します キーワード。これにより、「適切な」テーブルを指定できます。

参加者の81%は、ブートキャンプに参加した後、自分たちの技術的な仕事の見通しについてより自信を持っていると述べました。今日のブートキャンプにマッチしましょう。

平均的なブートキャンプの卒業生は、ブートキャンプの開始から最初の仕事を見つけるまで、キャリアの移行に6か月も費やしませんでした。

ONステートメントを使用して、テーブルが接続されている条件を判別します。 左結合 外部結合の一種です。したがって、このタイプの結合は左外部結合と呼ばれる場合があります。 。

例を使用して、左結合を説明しましょう。 仕事。

LEFTJOINSQLの例

各従業員が勤務する部門名のリストを取得するとします。 1つのクエリを使用してこの情報を取得します。このデータを取得できるようにするクエリは次のとおりです。

SELECT employees.name, employees.title, company_departments.name AS DeptName
FROM employees
LEFT JOIN company_departments
ON employees.department_id = company_departments.department_id;

クエリは7つのレコードを返します:

名前 タイトル 部門名
ルーク セールスアソシエイト 販売
マイク セールスアソシエイト 販売
ハンナ セールスアソシエイト 販売
ジェフ シニアセールスアソシエイト 販売
アレクシス セールスアソシエイト 販売
エマ マーケティングディレクター マーケティング
ジョナ 営業担当副社長 エグゼクティブ

(7行)

クエリの最初の行で、3つの列を取得することを指定します。従業員の名前、役職、および勤務している部門の名前を取得します。 AS DeptName 部門名の列をDeptNameと呼ぶ必要があることをクエリに通知します 。

次の行で、従業員から情報を取得することを指定します。 テーブル。次に、 LEFT JOINを作成します そのテーブルとcompany_departmentsの間 。最後の行では、共通の値department_idを使用して2つのテーブルをリンクします。

左結合 結合条件が満たされた左側のテーブルのすべての行と右側のテーブルの行のみを返します。

部門IDが9の従業員がいる場合 その部門は存在しませんが、クエリには引き続き表示されます。存在しない会社の部門がある場合、それは JOINに表示されません。 クエリ。

クエリをもう一度実行しましょう。ただし、今回はデータベースに新しい従業員を追加します。新入社員の価値観は次のとおりです。

名前 タイトル department_id
アダム シニアセールスアソシエイト 9

(1行)

部門ID9 テーブルcompany_departments内に存在しません 。ただし、上記と同じ左結合クエリを実行すると、 LEFT JOIN を使用しているため、Adamのレコードは引き続き含まれます。 。これが同じINNERJOINの結果です 上記で実行したクエリですが、Adamの記録があります:

名前 タイトル 部門名
ルーク セールスアソシエイト 販売
マイク セールスアソシエイト 販売
ハンナ セールスアソシエイト 販売
ジェフ シニアセールスアソシエイト 販売
アレクシス セールスアソシエイト 販売
エマ マーケティングディレクター マーケティング
ジョナ 営業担当副社長 エグゼクティブ
アダム シニアセールスアソシエイト

結論

SQL LEFT JOIN 複数のテーブルをクエリし、指定された「左」テーブルからすべての行を返します。また、 JOINが存在する右側のテーブルから行を返します。 条件が満たされています。

たとえば、顧客のリストと、顧客が加入しているロイヤルティプランの名前を返したいとします。忠誠プランの名前が別のテーブルにある場合は、左結合を使用してそれらを取得できます。

学習者がSQLの知識を深めるのに役立つSQLの学習方法ガイドを作成しました。このガイドには、主要な学習リソースのリストと、途中で役立つ専門家のアドバイスが含まれています。 SQLの学習方法ページのガイドを確認してください。


  1. SQLServerでの結合

    SQL Server(Transact-SQL)では、JOINは複数のテーブルからデータを取得するために使用され、SQLコマンドで2つ以上のテーブルが接続されている場合に発生します。 SQLServerの4種類のJOINを次に示します 内部結合 -単純な接続フォームとも呼ばれます 左外側の結合 -またはLEFTJOIN 右外側の参加 -またはRIGHTJOIN 完全な外部参加 -または完全に参加 次に、SQL ServerのJOINをよりよく理解するために、構文、図、および例を見てみましょう。 内部結合 ほとんどの場合、特定のコマンドですでにINNERJOINを使用しています。これは最も一

  2. 完全ガイド:Fitbit Pay

    Fitbit は、利用可能な最高のスマート ウェアラブルの 1 つです。多くのモデルがあり、多くの機能を備えています。 Fitbit の有名な機能の 1 つに Fitbit Pay があります。 Fitbit Ionic と Fitbit Versa の近距離無線通信チップを使用すると、非接触型決済を利用できるあらゆる店舗で支払うことができます。 この投稿では、Fitbit Pay の使用方法を理解するのに役立つ完全なガイドを掲載しています。 Fitbit Pay とは? Fitbit Pay は、Fitbit Ionic および Versa にデビット カードまたはクレジット カードを追