การดำเนินการการรวมภายใน

รวมระเบียนจากสองตารางเมื่อใดก็ตามที่มีค่าที่ตรงกันในเขตข้อมูลทั่วไป

ไวยากรณ์

FROM table1 INNER JOIN table2 ON table1.field1compopr table2.field2

การดำเนินการ INNER JOIN มีส่วนเหล่านี้:

ส่วน

คำอธิบาย

table1, table2

ชื่อของตารางที่ระเบียนถูกรวม

field1, field2

ชื่อของเขตข้อมูลที่นำมารวมกัน ถ้าไม่ใช่ตัวเลข เขตข้อมูลเหล่านั้นจะต้องมีชนิดข้อมูลเดียวกัน และมีข้อมูลประเภทเดียวกัน แต่ไม่จำเป็นต้องมีชื่อเหมือนกัน

compopr

ตัวดำเนินการเปรียบเทียบเชิงสัมพันธ์ใดๆ ได้แก่ "=", "<", ">", "<=", ">=" หรือ "<>"


ข้อสังเกต

คุณสามารถใช้การดำเนินการ INNER JOIN ในส่วนคำสั่ง FROM ใดๆ นี่คือชนิดการรวมที่ธรรมดาที่สุด การรวมภายในจะรวมระเบียนจากสองตารางเมื่อใดก็ตามที่มีค่าที่ตรงกันในเขตข้อมูลที่เหมือนกันในทั้งสองตาราง

คุณสามารถใช้ INNER JOIN กับตารางแผนกและพนักงานเพื่อเลือกพนักงานทั้งหมดในแต่ละแผนก ในทางกลับกัน เมื่อต้องการเลือกแผนกทั้งหมด (ถ้าบางแผนกจะไม่มีพนักงานที่กำหนดให้) หรือพนักงานทั้งหมด (ถ้าไม่ได้กำหนดพนักงานบางคนให้กับแผนก) คุณสามารถใช้การดำเนินการ LEFT JOIN หรือ RIGHT JOIN เพื่อสร้าง การรวมภายนอก ได้

ถ้าคุณพยายามรวมเขตข้อมูลที่มี Memo หรือข้อมูลวัตถุ OLE ข้อผิดพลาดจะเกิดขึ้น

คุณสามารถรวมเขตข้อมูลตัวเลขสองเขตข้อมูลของชนิดที่คล้ายกันได้ ตัวอย่างเช่น คุณสามารถรวมบนเขตข้อมูล AutoNumber และ Long ได้เนื่องจากเป็นชนิดที่คล้ายกัน อย่างไรก็ตาม คุณไม่สามารถรวมชนิดเขตข้อมูล Single และ Double ได้

ตัวอย่างต่อไปนี้แสดงถึงวิธีที่คุณสามารถรวมตารางประเภทและผลิตภัณฑ์บนเขตข้อมูล CategoryID ได้:

SELECT CategoryName, ProductName
FROM Categories INNER JOIN Products
ON Categories.CategoryID = Products.CategoryID;

ในตัวอย่างก่อนหน้า CategoryID คือเขตข้อมูลที่รวมแล้ว แต่ไม่ได้รวมอยู่ในผลลัพธ์ของคิวรี เนื่องจากไม่ได้รวมอยู่ในคำสั่ง SELECT เมื่อต้องการรวมใส่เขตข้อมูลที่รวมแล้ว ให้ใส่ชื่อเขตข้อมูลในคำสั่ง SELECT ในกรณีนี้ Categories.CategoryID

คุณยังสามารถลิงก์ส่วนคำสั่ง ON หลายรายการในคำสั่ง JOIN โดยใช้ไวยากรณ์ต่อไปนี้:

SELECT fields
FROM table1 INNER JOIN table2
ON table1.field1compoprtable2.field1 AND
ON table1.field2compoprtable2.field2) OR
ON table1.field3compoprtable2.field3)];

คุณยังสามารถซ้อนคำสั่ง JOIN โดยใช้ไวยากรณ์ต่อไปนี้:

SELECT fields
FROM table1 INNER JOIN
(table2 INNER JOIN [( ]table3
[INNER JOIN [( ]tablex [INNER JOIN ...)]
ON table3.field3compoprtablex.fieldx)]
ON table2.field2compoprtable3.field3)
ON table1.field1compoprtable2.field2;

LEFT JOIN หรือ RIGHT JOIN อาจถูกซ้อนภายใน INNER JOIN แต่ INNER JOIN อาจไม่ได้ถูกซ้อนภายใน LEFT JOIN หรือ RIGHT JOIN



ขยายทักษะของคุณ
สำรวจการฝึกอบรม
รับฟีเจอร์ใหม่ก่อนใคร
เข้าร่วม Office Insider

ข้อมูลนี้เป็นประโยชน์หรือไม่

ขอบคุณสำหรับคำติชมของคุณ!

ขอขอบคุณสำหรับคำติชมของคุณ! เราคิดว่าอาจเป็นประโยชน์ที่จะให้คุณได้ติดต่อกับหนึ่งในตัวแทนฝ่ายสนับสนุน Office ของเรา

×