1. 程式人生 > >MySQL中LEFT JOIN 、RIGHT JOIN、INNER JOIN、FULL JOIN 的區別

MySQL中LEFT JOIN 、RIGHT JOIN、INNER JOIN、FULL JOIN 的區別

1.首先看看Left Join 與Right Join 與 Inner Join 與 Full Join對錶進行操作後得到的結果。
2.在資料庫中新建兩張表,並插入要測試的資料。
3.新建表:

CREATE DATABASE `test`;
USE `test`;
CREATE TABLE `emp`(
    `name` varchar(10)  NOT NULL,
    `city` varchar(10) NOT NULL
) ;
CREATE TABLE `sal`(
    `name`     varchar(10) NOT NULL,
    `salary` varchar
(10) NOT NULL );

emp表:
這裡寫圖片描述
sal表:
這裡寫圖片描述
4.左連線:LEFT JOIN

SELECT * FROM emp LEFT JOIN sal ON emp.name=sal.name;

這裡寫圖片描述
左連線:表emp是主表,因此查詢結果是顯示emp(主表)的全部資訊和sal(附表)與emp相關的資訊。
5.右連線:RIGHT JOIN

SELECT * FROM emp RIGHT JOIN sal ON emp.name=sal.name;

這裡寫圖片描述
右連線:表sal是主表,因此查詢結果顯示sal(主表)的全部資訊和emp(附表)與sal想關的資訊。
6.內連線:INNER JOIN

SELECT * FROM emp INNER JOIN sal ON emp.name=sal.name;

這裡寫圖片描述
內連線:顯示的是連個表相關的資訊。
7.全連線:FULL JOIN

SELECT * FROM emp FULL JOIN sal ON emp.name=sal.name;

全連線:顯示兩個表所有的資訊。