Applies ToAccess for Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

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

ไวยากรณ์

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, ProductNameFROM Categories INNER JOIN ProductsON Categories.CategoryID = Products.CategoryID;

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

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

SELECT fieldsFROM table1 INNER JOIN table2ON table1.field1compoprtable2.field1 ANDON table1.field2compoprtable2.field2) ORON table1.field3compoprtable2.field3)];

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

SELECT fieldsFROM 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

ต้องการความช่วยเหลือเพิ่มเติมหรือไม่

ต้องการตัวเลือกเพิ่มเติมหรือไม่

สํารวจสิทธิประโยชน์ของการสมัครใช้งาน เรียกดูหลักสูตรการฝึกอบรม เรียนรู้วิธีการรักษาความปลอดภัยอุปกรณ์ของคุณ และอื่นๆ

ชุมชนช่วยให้คุณถามและตอบคําถาม ให้คําติชม และรับฟังจากผู้เชี่ยวชาญที่มีความรู้มากมาย