データベーステーブルデータ:
A表
id name
1 小王
2 小李
3 小刘
B表
id A_id job
1 2 老师
2 4 程序员
1.左結合、左テーブルのすべてのレコードと右テーブルの結合フィールドを含むレコードを返し、右テーブルに存在しないフィールド値をnullに置き換えます。
例えば:
select a.name,b.job from A a left join B b on a.id=b.A_id
結果:
小王 null
小李 老师
小刘 null
2.右結合、結合されたフィールドに等しい右テーブルのすべてのレコードと左テーブルのレコードを含めて返し、左テーブルに存在しないフィールド値をnullに置き換えます。
例えば:
select a.name,b.job from A a right join B b on a.id=b.A_id
結果:
小李 老师
null 程序员
3.内部結合。2つのテーブルで結合フィールドが等しい行のみを返します。
例えば:
select a.name,b.job from A a inner join B b on a.id=b.A_id
結果:
小李 老师
4.完全外部結合。左右のテーブルのすべてのレコードと、左右のテーブルの同じ接続フィールドを持つレコードを返します。両側にフィールド値がない場合は、nullに置き換えます。
例えば:
select a.name,b.job from A a full join B b on a.id=b.A_id
結果:
小王 null
小李 老师
小刘 null
null 程序员