T-SQL - การเข้าร่วมตาราง

เซิร์ฟเวอร์ MS SQL Joinsอนุประโยคใช้เพื่อรวมระเบียนจากตารางสองตารางขึ้นไปในฐานข้อมูล JOIN เป็นวิธีการรวมฟิลด์จากสองตารางโดยใช้ค่าร่วมกันสำหรับแต่ละตาราง

พิจารณาสองตารางต่อไปนี้ (ก) ตารางลูกค้ามีดังนี้ -

ID  NAME       AGE       ADDRESS             SALARY 
1   Ramesh     32        Ahmedabad           2000.00 
2   Khilan     25        Delhi               1500.00 
3   kaushik    23        Kota                2000.00 
4   Chaitali   25        Mumbai              6500.00 
5   Hardik     27        Bhopal              8500.00 
6   Komal      22        MP                  4500.00 
7   Muffy      24        Indore              10000.00

(b) อีกตารางคือ ORDERS ดังต่อไปนี้ -

OID  DATE                       CUSTOMER_ID        AMOUNT 
100  2009-10-08 00:00:00.000    3                  1500.00 
101  2009-11-20 00:00:00.000    2                  1560.00 
102  2009-10-08 00:00:00.000    3                  3000.00 
103  2008-05-20 00:00:00.000    4                  2060.00

ให้เราเข้าร่วมสองตารางนี้ในคำสั่ง SELECT ของเราดังนี้ -

SELECT ID, NAME, AGE, AMOUNT 
   FROM CUSTOMERS, ORDERS 
   WHERE  CUSTOMERS.ID = ORDERS.CUSTOMER_ID 
OR 
SELECT A.ID, A.NAME, A.AGE, B.AMOUNT 
   FROM CUSTOMERS A inner join  ORDERS B on A.ID = B.Customer_ID

คำสั่งดังกล่าวจะสร้างผลลัพธ์ต่อไปนี้

ID   NAME      AGE    AMOUNT 
2    Khilan    25     1560.00 
3    kaushik   23     1500.00 
3    kaushik   23     3000.00 
4    Chaitali  25     2060.00

เป็นที่สังเกตได้ว่าการรวมจะดำเนินการในส่วนคำสั่ง WHERE สามารถใช้ตัวดำเนินการหลายตัวเพื่อเข้าร่วมตารางเช่น =, <,>, <>, <=,> =,! =, ระหว่าง, LIKE และ NOT; สามารถใช้ร่วมกับตารางได้ อย่างไรก็ตามตัวดำเนินการที่พบมากที่สุดคือสัญลักษณ์เท่ากับ

ประเภทการเข้าร่วม MS SQL Server -

มีการรวมประเภทต่างๆใน MS SQL Server -

  • INNER JOIN - ส่งคืนแถวเมื่อมีการจับคู่ในทั้งสองตาราง

  • LEFT JOIN - แสดงแถวทั้งหมดจากตารางด้านซ้ายแม้ว่าจะไม่มีรายการที่ตรงกันในตารางด้านขวา

  • RIGHT JOIN - ส่งคืนแถวทั้งหมดจากตารางด้านขวาแม้ว่าจะไม่มีรายการที่ตรงกันในตารางด้านซ้าย

  • FULL JOIN - ส่งคืนแถวเมื่อมีการแข่งขันในตารางใดตารางหนึ่ง

  • SELF JOIN - ใช้เพื่อรวมตารางเข้ากับตัวเองราวกับว่าตารางเป็นสองตารางโดยเปลี่ยนชื่อตารางอย่างน้อยหนึ่งตารางในคำสั่ง MS SQL Server ชั่วคราว

  • CARTESIAN JOIN - ส่งคืนผลคูณคาร์ทีเซียนของชุดระเบียนจากตารางที่รวมสองตารางขึ้นไป