ล่าสุดการพัฒนาเว็บบทเรียน
 

SQL LEFT JOIN คำหลัก


SQL LEFT JOIN คำหลัก

ซ้าย JOIN ผลตอบแทนคำหลักแถวทั้งหมดจากตารางด้านซ้าย (table1) กับแถวที่ตรงกันในตารางทางขวา (Table2) ผลเป็นโมฆะในด้านขวาเมื่อไม่มีการแข่งขัน

SQL LEFT JOIN ไวยากรณ์

SELECT column_name(s)
FROM table1
LEFT JOIN table2
ON table1.column_name = table2.column_name ;

หรือ:

SELECT column_name(s)
FROM table1
LEFT OUTER JOIN table2
ON table1.column_name = table2.column_name ;

PS! ในฐานข้อมูลบาง LEFT JOIN เรียกว่าภายนอกด้านซ้าย

SQL LEFT JOIN


ฐานข้อมูลการสาธิต

ในการกวดวิชานี้เราจะใช้ที่รู้จักกันดีฐานข้อมูลตัวอย่าง Northwind

ด้านล่างนี้คือการเลือกจาก "Customers" ตาราง:

ลูกค้า ชื่อลูกค้า ชื่อผู้ติดต่อ ที่อยู่ เมือง รหัสไปรษณีย์ ประเทศ
1

Alfreds Futterkiste Maria Anders Obere Str. 57 Berlin 12209 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitucion 2222 Mexico D.F. 05021 Mexico
3 Antonio Moreno Taqueria Antonio Moreno Mataderos 2312 Mexico D.F. 05023 Mexico

และเลือกจาก "Orders" ตาราง:

OrderID ลูกค้า EmployeeID OrderDate ShipperID
10308 2 7 1996-09-18 3
10309 37 3 1996-09-19 1
10310 77 8 1996-09-20 2

SQL LEFT JOIN ตัวอย่าง

คำสั่ง SQL ต่อไปนี้จะกลับลูกค้าทั้งหมดและคำสั่งใดที่พวกเขาอาจจะมี:

ตัวอย่าง

SELECT Customers.CustomerName, Orders.OrderID
FROM Customers
LEFT JOIN Orders
ON Customers.CustomerID=Orders.CustomerID
ORDER BY Customers.CustomerName;
ลองตัวเอง»

หมายเหตุ: LEFT JOIN คำหลักที่ส่งกลับแถวทั้งหมดจากตารางด้านซ้าย (ลูกค้า) แม้ว่าจะมีการแข่งขันในตารางที่เหมาะสมไม่ (คำสั่งซื้อ)