SQLは、リレーショナルデータベースと相互作用するための強力なツールです。 SQLでテーブルを使用する場合、多くの場合、複数のテーブルからのデータを組み合わせる必要があります。これは、参加オペレーションヘルプです。左結合と左外の結合は、一般的に使用される2つのコマンドです。それらは異なっているように見えますが、実際に同じ機能を実行します。 SQL左結合と左外の結合の作業と違いを理解しましょう。
:すべての行が返されるプライマリテーブル。
right_tableSELECT columns FROM left_table LEFT JOIN right_table ON left_table.column_name = right_table.column_name;
上記と同じ例を使用して、次のようにクエリを書き換えることができます。 ご覧のとおり、構文は左結合と同じです。唯一の違いは、外側という言葉を含めることです。
SELECT employees.name, departments.department_name FROM employees LEFT JOIN departments ON employees.department_id = departments.id;
このクエリは、左の結合と同じように、すべての従業員とそれに対応する部門名を取得します。従業員が部門に割り当てられていない場合、結果は部門名のnullを表示します。 また、読み取り:基本から前進レベルへのSQLガイド
左の結合および左外結合
は異なって表示される場合がありますが、それらはSQLで機能的に同一です。唯一の違いは、構文にあります:両方のコマンドが同じ結果を返しているので、それらの間の選択は個人的または組織的な好みの問題です。
実用的な例:左結合および左外結合ステップ1:データベースを作成
ステップ2:テーブルを作成
SELECT columns FROM left_table LEFT JOIN right_table ON left_table.column_name = right_table.column_name;
さて、両方のテーブルにサンプルデータを挿入します:
SELECT employees.name, departments.department_name FROM employees LEFT JOIN departments ON employees.department_id = departments.id;
output:
SELECT columns FROM left_table LEFT OUTER JOIN right_table ON left_table.column_name = right_table.column_name;
output:
SELECT employees.name, departments.department_name FROM employees LEFT OUTER JOIN departments ON employees.department_id = departments.id;
ステップ4:クエリを実行
データベースとテーブルが作成され、データが入力されたので、左結合と右の結合クエリを実行できます。
CREATE DATABASE company_db; USE company_db;
右にQuery
に参加します
-- Create the 'departments' table CREATE TABLE departments ( id INT PRIMARY KEY, department_name VARCHAR(100) NOT NULL ); -- Create the 'employees' table CREATE TABLE employees ( id INT PRIMARY KEY, name VARCHAR(100) NOT NULL, department_id INT, FOREIGN KEY (department_id) REFERENCES departments(id) );
左結合または左外結合を使用する
これらのSQLプロジェクトでテストするためにSQLの知識を入力してください!
以上がsql左結合vs.左外の結合の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。