sql fulljoin與inner join有何不同

sql
小樊
83
2024-08-28 08:20:48
欄目: 云計(jì)算

FULL JOIN 和 INNER JOIN 是 SQL 中兩種不同類型的連接查詢

  1. FULL JOIN(全連接): FULL JOIN 會(huì)返回兩個(gè)表中所有的數(shù)據(jù)行,包括匹配和不匹配的行。當(dāng)某行在一個(gè)表中沒(méi)有匹配的行時(shí),結(jié)果集中的其他表的列將顯示為 NULL。換句話說(shuō),F(xiàn)ULL JOIN 結(jié)果集中的行數(shù)等于兩個(gè)表中的行數(shù)之和,減去兩個(gè)表中相同鍵值的行數(shù)。

語(yǔ)法:

SELECT column_name(s)
FROM table1
FULL JOIN table2
ON table1.column_name = table2.column_name;
  1. INNER JOIN(內(nèi)連接): INNER JOIN 只返回兩個(gè)表中具有匹配關(guān)系的數(shù)據(jù)行。如果某行在一個(gè)表中沒(méi)有匹配的行,則該行不會(huì)出現(xiàn)在結(jié)果集中。因此,INNER JOIN 結(jié)果集中的行數(shù)等于兩個(gè)表中相同鍵值的行數(shù)。

語(yǔ)法:

SELECT column_name(s)
FROM table1
INNER JOIN table2
ON table1.column_name = table2.column_name;

總結(jié):

  • FULL JOIN 返回兩個(gè)表中所有的數(shù)據(jù)行,包括匹配和不匹配的行;
  • INNER JOIN 只返回兩個(gè)表中具有匹配關(guān)系的數(shù)據(jù)行。

0