MySQL外连接
內連接查詢,返回的結果,只包含符合查詢條件和連接條件的數據
有時,需要包含沒有關聯的數據,返回的查詢結果,不僅包含符合條件的數據,而且,包括左表和右表中的所有數據,此時,需要使用外連接
外連接,包括左連接和右連接
SELECT 所查字段 FROM 表1 LEFT } RIGHT [OUTER] JOIN表2
ON 表1.關系字段=表2.關系字段 WHERE 條件
參數說明
外連接和內連接的語法類似,只是使用LEFT JOIN、RIGHT JOIN關鍵字,其中,關鍵字左邊的表被稱為左表,關鍵字右邊的表被稱為右表。
使用左連接和右連接,查詢時,查詢結果是不一致的
LEFT JOIN,左連接,返回包含左表中的所有記錄,和右表中符合連接條件的記錄。
RIGHT JOIN,右連接,返回包含右表中的所有記錄,和左表中符合連接條件的記錄
左連接
左連接的結果,包括LEFT JOIN子句中,指定的左表的所有記錄,以及所有滿足連接條件的記錄,如果,左表的某條記錄在右表中不存在,則在右表中顯示為空
在department表和employee表之間,使用左連接查詢
可以看出,顯示了5條記錄,并且人事部沒有did等于5的員工
右連接
右連接和左連接正好相反,返回右表中所有指定的記錄,和所有滿足連接條件的記錄,如果,右表的某條記錄在左表中沒有匹配,則左表將返回空值。
在department表和employee表之間,使用右連接查詢
可以看出,顯示了4條記錄,name值為郝娟的員工沒有被分配部門
總結
- 上一篇: MySQL删除关联表的数据
- 下一篇: MySQL复合条件连接查询