#MySQL 中內連接、左連接、右連接的差異MySQL 中內連接、左連接和右連接的差異在於:內連接只返回同時在兩個表中匹配的行,而左連接返回左表所有行,包含匹配右表行,右連線返回右表所有行,包含符合左表行。內連接語法:SELECT * FROM table1 INNER JOIN table2 ON table1.column1 = table2.column2;左連接語法:SELECT * FROM table1 LEFT JOIN table2 ON table1.column1 = table2.column2;右連接語法:SELElumn1 = table2.column2;右連接語法#LE#.
內連接(INNER JOIN)
只傳回兩個表中具有符合行的記錄。
#傳回左表中的所有記錄,即使右表中沒有符合的行。
#傳回右表中的所有記錄,即使左表中沒有符合的行。
<code class="sql">SELECT *
FROM table1
INNER JOIN table2
ON table1.column1 = table2.column2;</code>
<code class="sql">SELECT *
FROM table1
LEFT JOIN table2
ON table1.column1 = table2.column2;</code>
<code class="sql">SELECT *
FROM table1
RIGHT JOIN table2
ON table1.column1 = table2.column2;</code>
假設我們有以下兩個表格:
<code>Table1: | id | name | |---|---| | 1 | John | | 2 | Mary | | 3 | Bob | Table2: | id | address | |---|---| | 1 | 123 Main St | | 2 | 456 Elm St | | 4 | 789 Oak St |</code>
<code class="sql">SELECT * FROM Table1 INNER JOIN Table2 ON Table1.id = Table2.id;</code>
#address | ||
---|---|---|
123 Main St | #2 | |
##456 Elm St |
<code class="sql">SELECT * FROM Table1 LEFT JOIN Table2 ON Table1.id = Table2.id;</code>
結果:
#1 | ||
---|---|---|
2 | Mary | |
##3 | Bob | NULL |
#右連結: |
id
##1 | John | |
---|---|---|
#2 | Mary | 456 Elm St |
4 | NULL | 789 Oak St |
以上是mysql中內連接,左連接和右連接的區別的詳細內容。更多資訊請關注PHP中文網其他相關文章!