表1
id name
1 test
2 test2
3 test3
4 test4
表2
id total
1 40%
4 80%
これらのテーブルに内部結合を使用する場合、結合はすべての行をチェックし、最終的に一致した行を返しますか?
表1
id name
1 test
2 test2
3 test3
4 test4
表2
id total
1 40%
4 80%
これらのテーブルに内部結合を使用する場合、結合はすべての行をチェックし、最終的に一致した行を返しますか?
INNER JOINは、テーブルaとテーブルbにある結果と一致します
両方のテーブルに少なくとも 1 つの一致がある場合に行を返します
ここに結合の例があります
編集 。
あなたの例では、ineer joinを使用して
select * from table1 t1
inner join table2 t2
on t1.id=t2.id
結果が得られます:
ID NAME TOTAL
1 test 40%
4 test4 80%
左結合を使用して
select * from table1 t1
left join table2 t2
on t1.id=t2.id
結果は
ID NAME TOTAL
1 test 40%
2 test2 (null)
3 test3 (null)
4 test4 80%
短い答えはい。これは、たとえば ( join table2 using(id)
) test 40% と test4 80% を取得します)
これが必要な場合は、外部結合を使用します。
1 test 40%
2 test1
3 test2
4 test3 80%
つまり、id フィールドでテーブルを結合したいが、両方のテーブルからのすべての情報を表示したい