Mysql中Left Join 與Right Join 與 Inner Join 與 Full Join的區別

看看Left Join 與Right Join 與 Inner Join 與 Full Join對錶進行操做後獲得的結果。sql

  • 在數據庫中新建兩張表,並插入要測試的數據。

新建表:數據庫

[sql]  view plain  copy
 
  1. USE [Test]  
  2. GO  
  3. /****** 對象:  Table [dbo].[EMP]    腳本日期: 06/22/2012 15:37:28 ******/  
  4. SET ANSI_NULLS ON  
  5. GO  
  6. SET QUOTED_IDENTIFIER ON  
  7. GO  
  8. CREATE TABLE [dbo].[EMP](  
  9.     [ENAME] [nchar](10) COLLATE Chinese_PRC_CI_AS NOT NULL,  
  10.     [CITY] [nchar](10) COLLATE Chinese_PRC_CI_AS NULL  
  11. ON [PRIMARY]  


 

[sql]  view plain  copy
 
  1. USE [Test]  
  2. GO  
  3. /****** 對象:  Table [dbo].[SAL]    腳本日期: 06/22/2012 15:38:04 ******/  
  4. SET ANSI_NULLS ON  
  5. GO  
  6. SET QUOTED_IDENTIFIER ON  
  7. GO  
  8. CREATE TABLE [dbo].[SAL](  
  9.     [ENAME] [nchar](10) COLLATE Chinese_PRC_CI_AS NOT NULL,  
  10.     [SALARY] [money] NULL  
  11. ON [PRIMARY]  


插入數據獲得的表:測試

EMP表:spa

SAL表:.net

    • 左鏈接
      [sql]  view plain  copy
       
      1. select  * from EMP Left join SAL on EMP.ENAME = SAL.ENAME;  

      左鏈接,表EMP是主表,所以查詢結果是顯示EMP(主表)的所有信息和SAL(附表)與EMP相關的信息。
    • 右鏈接
      [sql]  view plain  copy
       
      1. Select * from EMP Right join SAL on EMP.ENAME = SAL.ENAME;  

      右鏈接,表SAL是主表,所以查詢結果顯示SALT(主表)的所有信息和EMP(附表)與SAL想關的信息。
    • 內鏈接
      [sql]  view plain  copy
       
      1. SELECT * FROM EMP inner join SAL on EMP.ENAME = SAL.ENAME;  

      內鏈接,顯示的是連個表相關的信息。
    • 全鏈接
      [sql]  view plain  copy
       
      1. SELECT * FROM EMP full join SAL on EMP.ENAME = SAL.ENAME;  

      全鏈接,顯示兩個表全部的信息。
相關文章
相關標籤/搜索