MySQL是一種開源的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)。在MySQL中,關(guān)聯(lián)查詢是非常常見的操作。 MySQL支持六種關(guān)聯(lián)查詢:內(nèi)連接、左連接、右連接、外連接、自連接和交叉連接。
1. 內(nèi)連接
SELECT column_name(s) FROM table1 JOIN table2 ON table1.column_name=table2.column_name;
內(nèi)連接是最常用的關(guān)聯(lián)查詢類型之一,它將兩個表中相同的數(shù)據(jù)行連接在一起。在內(nèi)連接查詢語句中,只有在主表和外部表之間有相同的數(shù)據(jù)行時,才會返回聯(lián)接結(jié)果。
2. 左連接
SELECT column_name(s) FROM table1 LEFT JOIN table2 ON table1.column_name=table2.column_name;
左連接也稱為左外連接,它返回左表的所有行以及滿足聯(lián)接條件的右表的匹配行。 如果在右表中沒有匹配的行,則在結(jié)果集中使用 NULL 值填充。
3. 右連接
SELECT column_name(s) FROM table1 RIGHT JOIN table2 ON table1.column_name=table2.column_name;
右連接也稱為右外連接,它返回右表的所有行以及滿足聯(lián)接條件的左表的匹配行。 如果在左表中沒有匹配的行,則在結(jié)果集中使用 NULL 值填充。
4. 外連接
SELECT column_name(s) FROM table1 OUTER JOIN table2 ON table1.column_name=table2.column_name;
外連接包括左外連接和右外連接,它返回左表和右表中的所有行,如果在一個表中沒有匹配的行,則在結(jié)果集中使用 NULL 值填充。
5. 自連接
SELECT column_name(s) FROM table1 T1, table1 T2 WHERE condition;
自連接是將一張表作為兩張表來使用的連接。 在自連接查詢語句中,從同一表中選擇不同的行并將它們組合起來。
6. 交叉連接
SELECT column_name(s) FROM table1 CROSS JOIN table2;
交叉連接也稱為笛卡爾積連接,它返回兩個表中的所有可能組合。如果第一個表中有m個行,第二個表中有n個行,則結(jié)果集中將包含m x n個行。
上一篇vue $.ajax
下一篇python 工器具識別