การรวมตารางและแบบสอบถาม

การรวมตารางและแบบสอบถาม

สิ่งสำคัญ:  บทความนี้เป็นการแปลด้วยเครื่อง โปรดดู ข้อจำกัดความรับผิดชอบ โปรดดูบทความฉบับภาษาอังกฤษ ที่นี่ เพื่อใช้อ้างอิง

เมื่อคุณรวมแหล่งข้อมูลหลายแหล่งในแบบสอบถาม Access คุณใช้การรวมเพื่อจำกัดจำนวนระเบียนที่คุณต้องการดู โดยยึดตามวิธีแหล่งข้อมูลเกี่ยวข้องกัน คุณยังใช้การรวมเพื่อรวมระเบียนจากทั้งสองแหล่งข้อมูล เพื่อให้แต่ละคู่ของระเบียนจากแหล่งข้อมูลกลายเป็น หนึ่งระเบียนในผลลัพธ์ของคิวรี

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

หมายเหตุ: คุณสามารถเข้าร่วมแบบสอบถามในแบบเดียวกับที่คุณรวมตาราง และยังสามารถเข้าร่วมทั้งสองอย่าง

ในบทความนี้

ภาพรวม

ชนิดของการรวม

แสดงแถวที่มีค่าร่วมกันอยู่ในทั้งสองตารางที่ใช้

แสดงแถวทั้งหมดจากตารางหนึ่ง และแถวที่สอดคล้องกันจากอีกตารางหนึ่ง

แสดงแถวทั้งหมดจากตารางทั้งสอง และเข้าร่วมเหล่านั้นที่มีค่าร่วมกันอยู่

ข้ามการรวม

รวมตารางโดยยึดตามความไม่เท่ากันของค่าเขตข้อมูล

ลบการรวม

ภาพรวม

ฐานข้อมูลคือ ชุดของตารางของข้อมูลที่ผู้รับผิดชอบตรรกะความสัมพันธ์กัน คุณสามารถใช้ความสัมพันธ์ของการเชื่อมต่อตารางตามเขตข้อมูลที่พวกเขามีเหมือนกัน ตารางอาจเป็นส่วนหนึ่งของความสัมพันธ์อักขระจำนวน แต่ละความสัมพันธ์ได้เหมือนกับที่สองตารางเสมอ ในคิวรี ความสัมพันธ์จะถูกแสดง ด้วยการรวม

เมื่อคุณเพิ่มตารางลงในคิวรีAccess สร้างการรวมที่ยึดตามความสัมพันธ์ที่กำหนดไว้ระหว่างตาราง ด้วยตนเองคุณสามารถสร้างการรวมในคิวรี แม้ว่าพวกเขาไม่แสดงความสัมพันธ์ที่ได้กำหนดไว้แล้ว ถ้าคุณใช้แบบสอบถามอื่น (แทนที่ หรือนอกเหนือ จากตาราง) เป็นแหล่งข้อมูลสำหรับแบบสอบถาม คุณสามารถสร้างการรวม ระหว่างแบบสอบถามแหล่ง และยัง ระหว่างเหล่านั้นแบบสอบถามและตารางใด ๆ ที่คุณใช้เป็นแหล่งข้อมูล

การรวมทำงานในทำนองเดียวกันกับเกณฑ์ของคิวรีที่พวกเขาสร้างกฎที่ข้อมูลต้องตรงกับจะรวมอยู่ในการดำเนินการคิวรี ไม่เหมือนกับเงื่อนไข รวมจะระบุว่า แต่ละคู่ของแถวที่ตรงตามเงื่อนไขการรวมจะถูกรวมเข้าในชุดระเบียนเพื่อสร้างแถวเดียวหรือไม่

มีอยู่สี่ชนิดพื้นฐานของการรวม: การรวมภายใน การรวมภายนอก การรวมแบบไขว้ และการรวมไว้ บทความนี้สำรวจแต่ละชนิดของการรวมที่คุณสามารถใช้ สาเหตุที่คุณใช้แต่ละชนิด และวิธีการสร้างการรวม

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

กล่อง คุณสมบัติการรวม

บรรทัดนี้ระหว่างตารางแทนการรวม ดับเบิลคลิกที่การรวมเพื่อเปิดตัวกล่องโต้ตอบคุณสมบัติการรวม (อธิบาย) และตรวจทาน หรือเปลี่ยนการรวมไว้

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

พื้นที่นี้จะกำหนดชนิดของการรวม คือ ตัวเลือก 1 เป็นการรวมภายใน ตัวเลือก 2 เป็นการรวมภายนอก และตัวเลือก 3 เป็นการรวมภายนอกด้านขวา

โดยสามารถใช้เขตข้อมูลได้จากทั้งสองตาราง และข้อมูลที่เกี่ยวข้องกับงานที่กำหนดไว้จะแสดงขึ้นในเขตข้อมูล ในการรวมภายใน จะไม่มีข้อมูลอื่นอีก ในการรวมภายนอก ระเบียนที่ไม่เกี่ยวข้องจากตารางหนึ่งจะมีอยู่ในผลลัพธ์ของคิวรีด้วย

ด้านบนของหน้า

ชนิดของการรวม

การรวมพื้นฐานมีด้วยกันสี่ชนิด คือ การรวมภายใน การรวมภายนอก การรวมแบบไขว้ และการรวมที่ไม่เท่ากัน การรวมแบบไขว้และการรวมที่ไม่เท่ากันเป็นชนิดการรวมขั้นสูงที่ไม่ค่อยได้ใช้นัก แต่คุณควรเรียนรู้เพื่อให้เข้าใจวิธีการทำงานของการรวมอย่างสมบูรณ์

การรวมภายใน: รวมเฉพาะข้อมูลที่เกี่ยวข้องกันจากทั้งสองตารางเท่านั้น

การรวมภายในคือการรวมที่ Access จะรวมเฉพาะข้อมูลจากตารางถ้ามีข้อมูลที่สอดคล้องกันในตารางที่สัมพันธ์กัน และในทางกลับกันด้วย ส่วนใหญ่แล้ว คุณจะใช้การรวมภายใน เมื่อคุณสร้างการรวมและไม่ได้ระบุว่าเป็นการรวมชนิดใด Access จะถือว่าคุณต้องการสร้างการรวมภายใน การรวมภายในมีประโยชน์มากเนื่องจากจะทำให้คุณรวมข้อมูลจากสองแหล่งได้โดยยึดตามค่าที่ใช้ร่วมกัน ดังนั้นคุณจะเห็นข้อมูลเมื่อทุกอย่างสมบูรณ์เท่านั้น

การรวมภายนอก: ข้อมูลที่เกี่ยวข้องทั้งหมดจะถูกรวมเข้าด้วยกันอย่างถูกต้อง รวมถึงระเบียนที่เหลือของตารางด้วย

การรวมภายนอกก็เหมือนกับการรวมภายใน แต่มีการเพิ่มแถวที่เหลืออยู่จากตารางหนึ่งเข้ามาด้วย การรวมภายนอกเป็นแบบมีทิศทาง โดยการรวมภายนอกด้านซ้ายจะมีระเบียนทั้งหมดจากตารางด้านซ้าย ซึ่งเป็นตารางแรกในการรวม และการรวมภายนอกด้านขวาจะมีระเบียนทั้งหมดจากตารางด้านขวา ซึ่งเป็นตารางที่สองในการรวม

การรวมภายนอกแบบสมบูรณ์: รวมข้อมูลทั้งหมดเท่าที่เป็นไปได้เข้าด้วยกัน

ในบางระบบ การรวมภายนอกอาจรวมแถวทั้งหมดจากทั้งสองตารางได้ โดยจะรวมกันเมื่อมีแถวที่สอดคล้องกัน สิ่งนี่เรียกว่าการรวมภายนอกแบบสมบูรณ์ และ Access ไม่ได้สนับสนุนการรวมนี้อย่างชัดเจน อย่างไรก็ตาม คุณสามารถใช้การรวมแบบไขว้และเกณฑ์เพื่อให้ได้ผลแบบเดียวกันได้

การรวมแบบไขว้: รวมข้อมูลทั้งหมดในทุกวิธีที่เป็นไปได้

โดยส่วนใหญ่แล้ว การรวมแบบไขว้จะเป็นผลสืบเนื่องมาจากการเพิ่มตารางสองตารางลงในคิวรี แต่ไม่ได้รวมตารางทั้งสองเข้าด้วยกัน Access จะแปลความว่าคุณต้องการดูระเบียนทั้งหมดของตารางหนึ่งรวมกับระเบียนทั้งหมดของอีกตารางหนึ่ง หรือก็คือการรวมของระเบียนที่เป็นไปได้ทั้งหมด เนื่องจากแม้ไม่มีข้อมูลก็สามารถรวมได้ การรวมประเภทนี้จึงไม่ค่อยให้ผลลัพธ์ที่เป็นประโยชน์ แต่ก็มีบ้างบางครั้งที่คุณจำเป็นต้องใช้การรวมแบบไขว้

การรวมที่ไม่เท่ากัน: เช่นเดียวกับการรวมทั่วไป แต่จะใช้การเปรียบเทียบที่ต่างออกไปในการรวมแถว

การรวมที่ไม่เท่ากันจะใช้ตัวดำเนินการอื่นนอกจากเครื่องหมายเท่ากับ (=) เพื่อเปรียบเทียบค่าและกำหนดวิธีการรวมข้อมูล แม้การรวมที่ไม่เท่ากันจะไม่ได้รับการสนับสนุนอย่างชัดเจน แต่คุณก็สามารถใช้การรวมแบบไขว้และเกณฑ์เพื่อสร้างผลลัพธ์แบบเดียวกันได้

แสดงแถวที่มีค่าร่วมกันอยู่ในทั้งสองตารางที่ใช้

ถ้าคุณต้องการแสดงเฉพาะแถวที่มีค่าตรงกันในเขตข้อมูลที่ใช้ในการรวม คุณควรใช้การรวมภายใน Access จะสร้างการรวมภายในให้โดยอัตโนมัติ

การรวมภายในเป็นชนิดของการรวมโดยทั่วไป พวกเขาบอกแบบสอบถามที่แถวหนึ่งที่รวมจากตารางที่สัมพันธ์กับแถวในตารางอื่น พื้นฐานของข้อมูลในเขตข้อมูลที่รวมไว้ เมื่อมีการเรียกใช้คิวรีที่ มีการรวมภายใน เฉพาะแถวที่มีค่าร่วมกันอยู่ในตารางรวมทั้งสองจะถูกรวมไว้ในการดำเนินการคิวรี

ฉันจะใช้การรวมภายในได้อย่างไร

ส่วนใหญ่แล้ว คุณสามารถใช้การรวมภายในได้โดยไม่ต้องทำอะไรเลย ถ้าตารางที่คุณเพิ่มลงในคิวรีมีความสัมพันธ์อยู่แล้ว Access จะสร้างการรวมภายในระหว่างตารางที่สัมพันธ์กันแต่ละคู่โดยอัตโนมัติเมื่อคุณเพิ่มตาราง ถ้าได้บังคับใช้ Referential Integrity แล้ว Access จะแสดง "1" ที่ด้านบนของเส้นการรวมเพื่อบอกให้รู้ว่าตารางไหนที่อยู่ด้าน "หนึ่ง" ของความสัมพันธ์แบบหนึ่ง-ต่อ-กลุ่ม และใช้สัญลักษณ์อนันต์ () เพื่อบอกว่าตารางไหนอยู่ด้าน "กลุ่ม"

แม้ว่าคุณยังไม่ได้สร้างความสัมพันธ์ Access จะสร้างการรวมภายในถ้าคุณเพิ่มตารางสองตารางลงในคิวรี และตารางเหล่านั้นแต่ละมีเขตข้อมูลที่ มีเหมือนกัน หรือชนิดข้อมูลที่เข้ากันได้และหนึ่งเขตข้อมูลรวมแบบคีย์หลัก สัญลักษณ์ "หนึ่ง" และ "กลุ่ม" จะแสดงขึ้นในกรณีนี้ เนื่องจากไม่มีการบังคับใช้ referential integrity

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

ไวยากรณ์ SQL สำหรับการรวมภายใน

การรวมภายในจะถูกระบุใน SQL ในส่วนคำสั่ง FROM ดังแสดงด้านล่างนี้

จากการรวมภายในtable1table2บนtable1การเปรียบเทียบ field1 table2field2

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

ส่วน

คำอธิบาย

table1, table2

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

field1, field2

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

เปรียบเทียบ

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

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับไวยากรณ์ของการรวมภายใน ดูหัวข้อการดำเนินการรวมภายใน

ด้านบนของหน้า

แสดงแถวทั้งหมดจากตารางหนึ่ง และแถวที่สอดคล้องกันจากอีกตารางหนึ่ง

การรวมภายนอกบอกแบบสอบถามที่แม้ว่าบางอย่างของแถวบนทั้งสองด้านของการรวมสอดคล้องพอดี แบบสอบถามควรรวมทั้งหมดของแถวจากตารางหนึ่ง และแถวเหล่านั้นจากอีกตารางหนึ่งที่มีค่าร่วมกันบนทั้งสองด้านของการรวมใช้ร่วมกัน

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

หมายเหตุ: คุณได้อย่างง่ายดายสามารถบอกตารางที่มีตารางด้านซ้ายหรือตารางถูกต้องในการรวมที่ระบุ โดยดับเบิลคลิกที่การรวมแล้ว ค้นหาในกล่องโต้ตอบคุณสมบัติการรวม คุณสามารถสลับไปยังมุมมอง SQL ยัง และตรวจสอบคำสั่ง from แล้ว

เนื่องจากแถวบางแถวในด้านหนึ่งของการรวมภายนอกจะไม่มีแถวที่สอดคล้องจากตารางอื่น ดังนั้นบางเขตข้อมูลที่ถูกส่งกลับในผลลัพธ์คิวรีจากตารางอื่นจึงว่างเปล่าเมื่อมีแถวไม่สอดคล้องกัน

ฉันจะใช้การรวมภายนอกได้อย่างไร

คุณสามารถสร้างการรวมภายนอกได้โดยการปรับเปลี่ยนการรวมภายในที่มีอยู่ ถ้าไม่มีการรวมภายใน คุณสามารถสร้างขึ้นมาแล้วเปลี่ยนเป็นการรวมภายนอกก็ได้

เปลี่ยนการรวมภายในเป็นการรวมภายนอก

  1. ในมุมมองออกแบบของคิวรี ให้ดับเบิลคลิกที่การรวมที่คุณต้องการเปลี่ยน

    กล่องโต้ตอบ คุณสมบัติการรวม จะปรากฏขึ้น

  2. ในกล่องโต้ตอบคุณสมบัติการรวม สังเกตตัวเลือกแสดงอยู่ด้านข้างตัวเลือก2 และ3 ตัวเลือก

  3. คลิกตัวเลือกที่คุณต้องการใช้ จากนั้น คลิก ตกลง

  4. Access จะแสดงการรวม และแสดงลูกศรที่ชี้จากแหล่งข้อมูลที่แถวทั้งหมดจะถูกรวมลงในแหล่งข้อมูลซึ่งจะมีเพียงแถวที่สอดคล้องกับเงื่อนไขการรวมเท่านั้นที่จะถูกรวมเข้าไป

การรวมภายนอกที่ไม่ชัดเจน

ถ้าคุณสร้างคิวรีที่ประกอบด้วยการ LEFT JOIN และการรวมภายใน Access อาจไม่สามารถตรวจสอบที่ดำเนินการการเข้าร่วมได้ เนื่องจากผลลัพธ์แตกต่างกันโดยขึ้นอยู่กับว่ารวมด้านซ้ายหรือการรวมภายในจะดำเนินการก่อน Access แสดงข้อผิดพลาด:

เมื่อต้องการแก้ไขข้อผิดพลาดนี้ คุณต้องปรับเปลี่ยนคิวรีเพื่อให้ล้างที่เข้าร่วมเพื่อดำเนินการก่อน

ไวยากรณ์ SQL สำหรับการรวมภายนอก

การรวมภายนอกจะถูกระบุใน SQL ในส่วนคำสั่ง FROM ดังแสดงด้านล่างนี้

จากตาราง 1 [ซ้าย | รวมขวา] table2
บนtable1.field1 เปรียบเทียบ table2.field2

การดำเนินการ LEFT JOIN และ RIGHT JOIN มีส่วนต่างๆ ดังต่อไปนี้

ส่วน

คำอธิบาย

table1, table2

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

field1, field2

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

เปรียบเทียบ

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

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับไวยากรณ์ของการรวมภายนอก ดูหัวข้อการดำเนินการรวมขวา LEFT JOIN

ด้านบนของหน้า

แสดงแถวทั้งหมดจากตารางทั้งสอง และเข้าร่วมเหล่านั้นที่มีค่าร่วมกันอยู่

เมื่อคุณต้องการแสดงแถวทั้งหมดจากตารางสองตาราง และเข้าร่วมได้โดยยึดตามค่าทั่วไป คุณใช้การรวมภายนอกแบบสมบูรณ์ Access อย่างชัดเจนสนับสนุนการรวมภายนอกแบบสมบูรณ์ แต่คุณสามารถสร้างผลลัพธ์เดียวกัน โดยใช้คิวรีแบบร่วม กระบวนงานต่อไปนี้อธิบายวิธีการทำเช่นนี้ แต่ถ้าคุณต้องการให้ข้อมูลเพิ่มเติมเกี่ยวกับคิวรีแบบร่วม ดูในส่วนดูเพิ่มเติม

เมื่อต้องการใช้คิวรีแบบร่วมเพื่อดำเนินการรวมภายนอกแบบสมบูรณ์:

  1. สร้างคิวรีที่มีการรวมภายนอกด้านซ้ายบนเขตข้อมูลที่คุณต้องการใช้สำหรับการรวมภายนอกแบบสมบูรณ์

  2. บนแท็บ หน้าแรก ในกลุ่ม มุมมอง ให้คลิก มุมมอง แล้วคลิกที่ มุมมอง SQL

  3. กด CTRL + C เพื่อคัดลอกโค้ด SQL

  4. ลบเครื่องหมายอัฒภาคที่ส่วนท้ายของคำสั่ง from นั้นแล้ว กด ENTER

  5. พิมพ์ UNION จากนั้นกด Enter

    หมายเหตุ: โปรดอย่าใช้คำสำคัญ ALL เมื่อคุณใช้คิวรีแบบร่วมเพื่อดำเนินการการรวมภายนอกแบบสมบูรณ์

  6. กด CTRL + V เพื่อวางโค้ด SQL ที่คุณคัดลอกในขั้นตอนที่ 3

  7. ในโค้ดที่คุณวาง ให้เปลี่ยน LEFT JOIN เป็น RIGHT JOIN

  8. ลบเครื่องหมายอัฒภาคที่ด้านท้ายของส่วนที่สองส่วนคำสั่ง แล้วกด ENTER

  9. เพิ่มส่วนคำสั่ง WHERE ที่ระบุว่าค่าของเขตข้อมูลการรวมเป็น NULL ในตารางแรกที่ปรากฏในส่วนคำสั่ง FROM (ตารางด้านซ้าย)

    ตัวอย่างเช่น ถ้าส่วนคำสั่ง FROM คือ

    FROM Products RIGHT JOIN [Order Details] 
    ON Products.ID = [Order Details].[Product ID]

    คุณต้องเพิ่มคำสั่ง where ต่อไปนี้:

    WHERE Products.ID IS NULL

  10. พิมพ์เครื่องหมายอัฒภาค (;) ที่ด้านท้ายของส่วนคำสั่ง WHERE เพื่อระบุจุดสิ้นสุดของคิวรีแบบร่วม

  11. บนแท็บ ออกแบบ ในกลุ่ม ผลลัพธ์ ให้คลิก เรียกใช้

ข้ามการรวม

รวมแบบไขว้จะแตกต่างจากการรวมภายใน และภายนอกในที่ที่ไม่ชัดเจนแสดงในAccess ในการรวมแบบไขว้ แต่ละแถวจากตารางหนึ่งถูกรวมเข้ากับแต่ละแถวจากตารางอื่น เกิดเรียกว่าผลิตภัณฑ์ข้ามหรือการคูณคาร์ทีเซียน เวลาใด ๆ ที่คุณเรียกใช้คิวรีที่มีตารางที่ไม่ชัดเจนได้เข้าร่วม ผลิตภัณฑ์ข้ามเป็นผลลัพธ์ รวมไขว้ได้โดยไม่ตั้งใจโดยปกติแล้ว แต่ยังมีกรณีที่พวกเขาสามารถใช้ประโยชน์

เพราะเหตุใดฉันถึงต้องใช้การรวมแบบไขว้

ถ้าคุณต้องการตรวจสอบทุกผสมเป็นไปได้ของแถวระหว่างสองตารางหรือคิวรี ใช้รวมแบบไขว้ ตัวอย่างเช่น สมมติธุรกิจของคุณที่มีปี spectacular และคุณกำลังพิจารณาแก่เงินคืนไปยังลูกค้าของคุณ คุณสามารถสร้างคิวรีที่รวมซื้อสำหรับลูกค้าแต่ละ สร้างตารางขนาดเล็กที่มีเปอร์เซ็นต์คืนได้หลาย นั้นรวมทั้งสองในแบบสอบถามอื่นที่ดำเนินการรวมแบบไขว้ คุณจบขึ้น ด้วยคิวรีที่แสดงชุดของเงินคืนข้างกล่องสำหรับลูกค้าแต่ละราย

ฉันจะใช้การรวมแบบไขว้ได้อย่างไร

รวมแบบไขว้ผลิตใดก็ตามที่คุณรวมตารางหรือแบบสอบถามในแบบสอบถามของคุณ และสร้างเข้าร่วมอย่างน้อยหนึ่งที่ชัดเจนสำหรับแต่ละตาราง หรือแบบสอบถาม Access รวมทุกแถวจากตารางหรือแบบสอบถามที่ไม่ชัดเจนรวมเข้ากับตารางหรือคิวรีเพื่อให้ทุกแถวในผลลัพธ์อื่นๆ แต่ละรายการ พิจารณาสถานการณ์สมมติคืนจากย่อหน้าก่อนหน้า สมมติว่า คุณมีลูกค้า 91 และที่คุณต้องการดูคืนเป็นไปได้ทั้งหมดห้าเปอร์เซ็นต์ เข้าร่วมของคุณไขว้ก่อให้เกิดแถว 455 (ผลคูณของ 5 และ 91)

ขณะที่คุณอาจสมมติ รวมไขว้โดยไม่ตั้งใจสามารถสร้างตัวเลขขนาดใหญ่ของแถวในผลลัพธ์ของคิวรีของคุณ ยิ่งไปกว่า ผลลัพธ์เหล่านี้จะต่าง ๆ โดยทั่วไป เนื่องจากหากคุณไม่ต้องการรวมทุกแถว มีทุกแถวจริง ส่วนใหญ่รวมแถวที่ปรากฏขึ้นในผลลัพธ์ไม่เหมาะสม สุดท้าย คิวรีที่ใช้โดยไม่ตั้งใจรวมไขว้อาจใช้เวลานานมากเพื่อเรียกใช้

การรวมแบบไขว้โดยไม่ตั้งใจในมุมมองออกแบบของแบบสอบถาม
การข้ามโดยไม่ตั้งใจเข้าร่วมในมุมมองออกแบบคิวรี

1. เขตข้อมูลอยู่ในวงกลมควรสามารถเข้าร่วมกัน

Cross Product ที่ไม่ตั้งใจ
ผลคูณขนส่งกลับ โดยรวมไขว้โดยไม่ตั้งใจที่กล่าวถึงด้านบน

1. สังเกตจำนวนระเบียนที่มีขนาดใหญ่

ผลลัพธ์แบบสอบถามที่ได้รับการแก้ไข
ผลลัพธ์หลังจากการรวมที่ถูกต้องจะถูกสร้างขึ้น

1. โปรดสังเกตว่า จำนวนของระเบียนที่มีขนาดเล็กมาก

ด้านบนของหน้า

รวมตารางโดยยึดตามความไม่เท่ากันของค่าเขตข้อมูล

การรวมไม่จำเป็นต้องยึดตาม ความเท่ากัน ของเขตข้อมูลที่ถูกรวม การรวมอาจยึดตามตัวดำเนินการเปรียบเทียบใดก็ได้ เช่น มากกว่า (>), น้อยกว่า (<), หรือไม่เท่ากับ (<>) การรวมที่ไม่ได้ยึดตามความเท่ากันเรียกว่า การรวมที่ไม่เท่ากัน

ถ้าคุณต้องการรวมแถวของแหล่งข้อมูลสองแหล่งโดยยึดตามค่าเขตข้อมูลที่ไม่เท่ากัน คุณสามารถใช้การรวมที่ไม่เท่ากันได้ โดยทั่วไปแล้ว การรวมที่ไม่เท่ากันจะยึดตามตัวดำเนินการการเปรียบเทียบ มากกว่า (>), น้อยกว่า (<), มากกว่าหรือเท่ากับ (>=), หรือ น้อยกว่าหรือเท่ากับ (<=) การรวมที่ไม่เท่ากันที่ยึดตามตัวดำเนินการไม่เท่ากับ (<>) จะส่งกลับแถวในจำนวนที่มากพอกันกับการรวมแบบไขว้ และยากที่จะทำความเข้าใจกับผลลัพธ์ที่ได้

ฉันจะใช้การรวมที่ไม่เท่ากันได้อย่างไร

การรวมที่ไม่ได้รับการสนับสนุนในมุมมองออกแบบ ถ้าคุณต้องการใช้ คุณต้องทำได้ โดยใช้มุมมอง SQL อย่างไรก็ตาม คุณสามารถสร้างการรวมในมุมมองออกแบบ สลับไปยังมุมมอง SQL ค้นหาเท่ากับการดำเนินการเปรียบเทียบ (=) และเปลี่ยนตัวดำเนินการที่คุณต้องการใช้ได้ หลังจากที่คุณทำเช่นนี้ คุณสามารถเท่านั้นเปิดแบบสอบถามในมุมมองออกแบบอีกครั้งถ้าคุณเปลี่ยนแปลงครั้งแรกที่ดำเนินการเปรียบเทียบกลับไปยังเท่ากับ (=) ในมุมมอง SQL

การลบการรวม

ถ้า Access ได้สร้างการรวมที่คุณไม่ต้องการขึ้นโดยอัตโนมัติ หรือถ้าคุณสร้างการรวมขึ้นมาโดยไม่ได้ตั้งใจ เช่น การรวมระหว่างสองเขตข้อมูลที่มีชนิดข้อมูลต่างกัน คุณสามารถลบการรวมนี้ได้

  1. ในตารางออกแบบคิวรี ให้คลิกที่การรวมที่คุณต้องการเอาออก

  2. กดDELETE

-หรือ-

  • ในตารางออกแบบแบบสอบถาม คลิกขวาที่การรวมที่คุณต้องการเอาออก แล้ว คลิ กลบ

ด้านบนของหน้า

หมายเหตุ: ข้อจำกัดความรับผิดชอบของการแปลด้วยเครื่อง: บทความนี้มีการแปลด้วยระบบคอมพิวเตอร์โดยไม่มีการดำเนินการโดยบุคคล Microsoft จัดให้มีการแปลด้วยเครื่องนี้เพื่อช่วยให้ผู้ใช้ที่ไม่ได้พูดภาษาอังกฤษสามารถใช้ประโยชน์จากเนื้อหาเกี่ยวกับผลิตภัณฑ์ บริการและเทคโนโลยีของ Microsoft เนื่องจากบทความมีการแปลด้วยเครื่อง อาจมีข้อผิดพลาดด้านคำศัพท์ ไวยากรณ์หรือรูปประโยค

ดูเพิ่มเติม

เพิ่มระเบียนในตารางโดยใช้คิวรีแบบใช้ผนวกข้อมูล

รวมผลลัพธ์ของหลายแบบสอบถามที่เลือก โดยใช้คิวรีแบบร่วม

สร้างแบบสอบถามที่ยึดตามหลายตาราง

สร้าง แก้ไข หรือลบความสัมพันธ์

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

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

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

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

×