MySQL中的連接是對多個表進行聯合查詢的一種方法。它們有兩種主要類型:內連接和外連接。這兩種連接有一些相似之處,但也有不同之處。
內連接(inner join)使用相等運算符將兩個表中的匹配行組合在一起。例如:
SELECT *
FROM table1
JOIN table2 ON table1.id = table2.id;
這里,我們將table1
和table2
連接在一起,使用id
列作為關聯鍵。查詢將僅返回那些在兩個表之間具有相同id
值的行。
外連接(outer join)也將兩個表連接在一起,但它會返回任何不匹配的行。
SELECT *
FROM table1
LEFT JOIN table2 ON table1.id = table2.id;
在這個例子中,我們使用左外連接(LEFT JOIN
),它將返回在table1
中所有行,以及在table2
中匹配的行(如果有的話)。如果沒有匹配的行,table2
列將返回NULL。
總結起來,內連接僅返回匹配的行,而外連接則返回所有行。