PG數據基本命令——連接(筆記)


 

在PostgreSQL中,有以下類型的連接:

  • 內連接(INNER JOIN)
  • 左外連接(LEFT OUTER JOIN)
  • 右外連接(RIGHT OUTER JOIN)
  • 全連接(FULL OUTER JOIN)
  • 跨連接(CROSS JOIN)

 1、內連接

  PostgreSQL內部連接也被稱為連接或簡單連接。 這是最常見的連接類型。 此連接返回滿足連接條件的多個表中的所有行。

  

   語法:

SELECT table1.columns, table2.columns  
FROM table1  
INNER JOIN table2  
ON table1.common_filed = table2.common_field;

  實例:

SELECT EMPLOYEES.ID, EMPLOYEES.NAME, DEPARTMENT.DEPT  
FROM EMPLOYEES   
INNER JOIN DEPARTMENT  
ON EMPLOYEES.ID = DEPARTMENT.ID;

 

 2、左外連接

  左外連接返回從“ON”條件中指定的左側表中的所有行,只返回滿足條件的另一個表中的行。

  

  語法:

SELECT table1.columns, table2.columns  
FROM table1  
LEFT OUTER JOIN table2  
ON table1.common_filed = table2.common_field;

 

   實例:

SELECT EMPLOYEES.ID, EMPLOYEES.NAME, DEPARTMENT.DEPT  
FROM EMPLOYEES 
LEFT OUTER JOIN DEPARTMENT  
ON EMPLOYEES.ID = DEPARTMENT.ID;

  輸出結果:

  

 

3、右外連接

   右外連接返回從“ON”條件中指定的右側表中的所有行,只返回滿足條件的另一個表中的行。

  

   語法:

SELECT table1.columns, table2.columns  
FROM table1  
RIGHT OUTER JOIN table2  
ON table1.common_filed = table2.common_field;

  實例:

SELECT EMPLOYEES.ID, EMPLOYEES.NAME, DEPARTMENT.DEPT  
FROM EMPLOYEES 
RIGHT OUTER JOIN DEPARTMENT  
ON EMPLOYEES.ID = DEPARTMENT.ID;

  執行結果:

  

 

4、全外連接

  全外連接從左表和左表中返回所有行。 

   

  語法:

SELECT table1.columns, table2.columns  
FROM table1  
FULL OUTER JOIN table2  
ON table1.common_filed = table2.common_field;

  實例:

SELECT EMPLOYEES.ID, EMPLOYEES.NAME, DEPARTMENT.DEPT  
FROM EMPLOYEES 
FULL OUTER JOIN DEPARTMENT  
ON EMPLOYEES.ID = DEPARTMENT.ID;

  執行結果:

  

 

5、交叉連接

  PostgreSQL跨連接(CROSS JOIN)將第一個表的每一行與第二個表的每一行相匹配。 它也被稱為笛卡爾積。  

   語法:

SELECT coloums   
FROM table1   
CROSS JOIN table2

  實例:

SELECT NAME, DEPT 
FROM EMPLOYEES  
CROSS JOIN DEPARTMENT;

  運行結果:

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM