ใน Access คุณสามารถสร้างเขตข้อมูลแบบหลายค่าที่เก็บค่าหลายค่า (สูงสุด 100) คุณยังสามารถสร้างเขตข้อมูลการค้นหาที่แสดงค่าที่เป็นมิตรกับผู้ใช้ที่ผูกกับค่าในแหล่งข้อมูลอื่นได้ เมื่อคุณคิวรีเขตข้อมูลการค้นหาหรือเขตข้อมูลที่มีหลายค่า จะมีข้อควรพิจารณาที่ไม่ซ้ํากัน สําหรับข้อมูลเพิ่มเติม ให้ดู สร้างหรือลบเขตข้อมูลแบบหลายค่า และ สร้างหรือลบเขตข้อมูลการค้นหา
ในบทความนี้
- ดูค่าที่ถูกผูกไว้ของเขตข้อมูลการค้นหาในคิวรี
- ใช้ค่าที่แสดงสําหรับเขตข้อมูลการค้นหาในคิวรี
- ใช้เขตข้อมูลแบบหลายค่าในคิวรี
- เพิ่มเกณฑ์ลงในเขตข้อมูลแบบหลายค่าในคิวรี
- เพิ่มเกณฑ์หลายเกณฑ์ลงในเขตข้อมูลแบบหลายค่าในคิวรี
- การจัดกลุ่มและการนับเขตข้อมูลแบบหลายค่าในคิวรี
- ใช้คิวรีแบบใช้ผนวกข้อมูลกับเขตข้อมูลที่มีหลายค่า
- ใช้คิวรีแบบใช้อัปเดตข้อมูลกับเขตข้อมูลที่มีหลายค่า
- ใช้คิวรีแบบใช้ลบข้อมูลกับเขตข้อมูลที่มีหลายค่า
ดูค่าที่ถูกผูกไว้ของเขตข้อมูลการค้นหาในคิวรี
ค่าที่แสดงของเขตข้อมูลการค้นหาจะแสดงในมุมมองแผ่นข้อมูลคิวรีโดยอัตโนมัติตามค่าเริ่มต้น เมื่อคุณสร้างคิวรี คุณสามารถแทนที่ลักษณะการทํางานนี้เพื่อให้แสดงค่าที่ถูกผูกไว้แทนได้ ในตัวอย่างนี้ สมมติว่าคุณต้องการดูค่าที่ถูกผูกไว้ของเขตข้อมูลการค้นหาในตารางสํานักงานใหญ่ที่ "ค้นหา" ชื่อรัฐของอังกฤษใหม่
เปิดคิวรีในมุมมองออกแบบ
ในตัวอย่างนี้ ให้เพิ่มตาราง Headquarters และ NewEngland
ควรรวมสองตารางเข้าด้วยกัน
สําหรับข้อมูลเพิ่มเติม ให้ดูที่ รวมตารางและคิวรี
ลากเขตข้อมูลพร้อมกับเขตข้อมูลการค้นหาไปยังตารางออกแบบคิวรี ในตัวอย่างนี้ ให้เพิ่มเขตข้อมูล City และ NEState
คลิกเขตข้อมูล การค้นหา จากนั้นบนแท็บ ออกแบบ ในกลุ่ม แสดง/ซ่อน ให้คลิก แผ่นคุณสมบัติ ในตัวอย่างนี้ ให้ใช้เขตข้อมูล NEState
ในแผ่นคุณสมบัติ ให้เลือกแท็บ ค้นหา จากนั้นในคุณสมบัติ ตัวควบคุมการแสดง ให้เลือก กล่องข้อความ
ผล ในตอนนี้ เมื่อคุณดูคิวรีในมุมมองแผ่นข้อมูล คุณจะเห็นค่าที่ถูกผูกไว้ที่สอดคล้องกันของค่าที่แสดง
ใช้ค่าที่แสดงสําหรับเขตข้อมูลการค้นหาในคิวรี
เมื่อคุณสร้างเขตข้อมูลการค้นหา การรวมจะถูกสร้างขึ้นระหว่างค่า ที่ถูกผูก ไว้ และค่า แสดง แม้ว่าคุณจะไม่สามารถใช้ค่า แสดง ในคิวรีได้โดยตรง แต่คุณสามารถใช้ค่าที่สอดคล้องกันจากแหล่งข้อมูลอื่นได้ ในตัวอย่างนี้ สมมติว่าคุณต้องการใช้ค่าที่แสดงของเขตข้อมูลการค้นหา NEState ในตาราง Headquarters ในคิวรีเป็นเกณฑ์
เปิดคิวรีในมุมมองออกแบบ
ในตัวอย่างนี้ ให้เพิ่มตาราง Headquarters และ NewEngland
ควรรวมสองตารางเข้าด้วยกัน สําหรับข้อมูลเพิ่มเติม ให้ดูที่ รวมตารางและคิวรีลากเขตข้อมูลที่คุณต้องการใช้ไปยังตารางคิวรี ในตัวอย่างนี้ ให้ลาก เมือง จากตารางสํานักงานใหญ่ไปยังคอลัมน์แรก NEState จากตารางสํานักงานใหญ่ไปยังคอลัมน์ที่สอง และ StateName จากตาราง NewEngland ไปยังคอลัมน์ที่สาม
ล้างกล่องกาเครื่องหมาย แสดง ของ StateName ในตารางคิวรี
ในตารางคิวรี ภายใต้ StateName ในแถว เกณฑ์ ให้ใส่ Vermont
เกณฑ์คิวรีจะยึดตามคอลัมน์ StateName ซึ่งแน่นอนมีค่าเดียวกับค่า Display แต่ไม่แสดงในมุมมองแผ่นข้อมูล
บนแท็บ ออกแบบ ในกลุ่ม ผลลัพธ์ ให้คลิก เรียกใช้
ผล แสดงเฉพาะแถวที่มี Vermont เท่านั้น
ใช้เขตข้อมูลแบบหลายค่าในคิวรี
เมื่อคุณแสดงเขตข้อมูลแบบหลายค่าในคิวรี คุณสามารถแสดงเขตข้อมูลแบบหลายค่าที่สมบูรณ์ที่มีค่าทั้งหมดซึ่งคั่นด้วยเครื่องหมายจุลภาคบนแถวเดียว หรือปรับข้อมูลให้ราบลงโดยมีแถวแยกสําหรับแต่ละค่า ตัวอย่างเช่น สมมติว่าคุณมีตาราง ปัญหา ที่มีเขตข้อมูล ชื่อเรื่อง สําหรับแต่ละปัญหาและเขตข้อมูลแบบหลายค่า มอบหมายให้ เพื่อกําหนดปัญหาให้กับบุคคล
แสดงค่าทั้งหมดในเขตข้อมูลที่มีหลายค่าในหนึ่งแถว
- เปิดคิวรีในมุมมองออกแบบ
- ในตัวอย่างนี้ ให้เพิ่มตารางประเด็น
- ลากเขตข้อมูลไปยังตารางออกแบบคิวรี ในตัวอย่างนี้ ให้ลากเขตข้อมูล ชื่อเรื่อง และเขตข้อมูล แบบหลายค่ามอบหมายให้
- บนแท็บ ออกแบบ ในกลุ่ม ผลลัพธ์ ให้คลิก เรียกใช้
ผล ดังที่คุณอาจคาดไว้ คอลัมน์หนึ่งจะแสดงเขตข้อมูล ชื่อเรื่อง และคอลัมน์ที่สองจะแสดงเขตข้อมูลแบบหลายค่า AssignedTo :
จะแสดงแต่ละค่าของเขตข้อมูลที่มีหลายค่าในหนึ่งแถว (มุมมองแบบแบนราบ)
- เปิดคิวรีในมุมมองออกแบบ
- ในตัวอย่างนี้ ให้เพิ่มตารางประเด็น
- ลากเขตข้อมูลที่คุณไปยังตารางคิวรี ในตัวอย่างนี้ ให้ลากเขตข้อมูล ชื่อเรื่อง และเขตข้อมูลแบบหลายค่า AssignedTo.Value
รูปแบบ ชื่อ<>เขตข้อมูล Value ผนวกคุณสมบัติ Valueเป็นสตริง ค่าในเขตข้อมูล มอบหมายให้ - บนแท็บ ออกแบบ ในกลุ่ม ผลลัพธ์ ให้คลิก เรียกใช้
ผล ข้อมูลจะถูกปรับให้ราบลงเพื่อให้เขตข้อมูล ชื่อเรื่อง ซ้ํากัน และแต่ละค่าในเขตข้อมูล มอบหมายให้ แบบหลายค่า จะแสดงในแถวที่สอดคล้องกัน:
เพิ่มเกณฑ์ลงในเขตข้อมูลแบบหลายค่าในคิวรี
การวางเกณฑ์เดียวกันในตารางคิวรีในคอลัมน์ตารางต่างๆ จะส่งผลกระทบอย่างมากต่อผลลัพธ์ของคิวรีของคุณ
เพิ่มเกณฑ์ที่แสดงค่าทั้งหมดในเขตข้อมูลที่มีหลายค่าในแถวเดียว
Access จะสร้างชุดผลลัพธ์ก่อน แล้วจึงเพิ่มเกณฑ์
เปิดคิวรีในมุมมองออกแบบ
ในตัวอย่างนี้ ให้เพิ่มตารางประเด็น
ลากเขตข้อมูลที่คุณไปยังตารางคิวรี ในตัวอย่างนี้ ให้ลากเขตข้อมูล ชื่อเรื่อง เขตข้อมูลแบบหลายค่า มอบหมายให้ และเขตข้อมูลแบบหลายค่า AssignedTo.Value
ล้างกล่องกาเครื่องหมาย แสดง ของ AssignedTo.Value ในตารางคิวรี
ในตารางคิวรี ภายใต้ มอบหมายให้ค่า ในแถว เกณฑ์ ให้ใส่ "NOT "David Hamilton"
การดูมุมมอง SQL มีประโยชน์:
SELECT Title, AssignedTo FROM Issues WHERE NOT AssignedTo.Value = "David Hamilton";บนแท็บ ออกแบบ ในกลุ่ม ผลลัพธ์ ให้คลิก เรียกใช้
ผล ปัญหาทั้งสามที่ไม่ได้กําหนดให้กับ David Hamilton จะแสดงเป็นค่าเริ่มต้น
เพิ่มเกณฑ์ที่แสดงแต่ละค่าในเขตข้อมูลแบบหลายค่าในหนึ่งแถว (มุมมองแบบแบน)
Access จะสร้างชุดผลลัพธ์แบบปรับแบนก่อน แล้วจึงเพิ่มเกณฑ์
เปิดคิวรีในมุมมองออกแบบ
ในตัวอย่างนี้ ให้เพิ่มตารางประเด็น
ลากเขตข้อมูลที่คุณไปยังตารางคิวรี ในตัวอย่างนี้ ให้ลากเขตข้อมูล ชื่อเรื่อง และเขตข้อมูลแบบหลายค่า AssignedTo.Value
ในตารางคิวรี ภายใต้ มอบหมายให้ค่า ในแถว เกณฑ์ ให้ใส่ NOT "David Hamilton"
การดูมุมมอง SQL มีประโยชน์:
SELECT Issues.Title, AssignedTo.Value FROM Issues WHERE NOT AssignedTo.Value = "David Hamilton"บนแท็บ ออกแบบ ในกลุ่ม ผลลัพธ์ ให้คลิก เรียกใช้
ผล แต่ละปัญหาที่ไม่ได้กําหนดให้กับ David Hamilton จะแสดงเป็นค่าที่ถูกปรับให้ราบ
เพิ่มเกณฑ์หลายเกณฑ์ลงในเขตข้อมูลแบบหลายค่าในคิวรี
บางครั้งคุณจําเป็นต้องค้นหาค่าที่ตรงกันมากกว่าหนึ่งค่าภายในเขตข้อมูลที่มีหลายค่า ตัวอย่างเช่น สมมติว่าคุณต้องการดูปัญหาเหล่านั้นซึ่งทั้ง "Kelly Rollin" และ "Lisa Miller" เป็นหนึ่งในค่าในเขตข้อมูล AssignedTo
- เปิดคิวรีในมุมมองออกแบบ
- ในตัวอย่างนี้ ให้เพิ่มตารางประเด็น
- ลากเขตข้อมูลที่คุณไปยังตารางคิวรี ในตัวอย่างนี้ ให้ลากเขตข้อมูล ชื่อเรื่อง และเขตข้อมูล แบบหลายค่ามอบหมายให้
- ในตารางคิวรี ภายใต้ มอบหมายให้ ในแถว เกณฑ์ ให้ใส่ "Kelly Rollin" และ "Lisa Miller"
- บนแท็บ ออกแบบ ในกลุ่ม ผลลัพธ์ ให้คลิก เรียกใช้
ผล ทั้งสองปัญหาที่กําหนดให้กับ "Kelly Rollin" และ "Lisa Miller" จะแสดงขึ้น
การจัดกลุ่มและการนับเขตข้อมูลแบบหลายค่าในคิวรี
เมื่อต้องการคํานวณ จัดกลุ่ม และการเรียงลําดับค่าที่เก็บไว้ในเขตข้อมูลแบบหลายค่า ให้ใช้ชื่อ<>เขตข้อมูล เขตข้อมูลค่า สําหรับข้อมูลเพิ่มเติมเกี่ยวกับคิวรีกลุ่ม ให้ดูที่ นับข้อมูลโดยใช้คิวรี
เมื่อต้องการนับจํานวนประเด็นที่กําหนดให้กับแต่ละบุคคล
- เปิดคิวรีในมุมมองออกแบบ
- ในตัวอย่างนี้ ให้เพิ่มตารางประเด็น
- ลากเขตข้อมูลที่คุณต้องการใช้ไปยังตารางคิวรี ในตัวอย่างนี้ ให้ลาก AssignedTo.Value ไปยังคอลัมน์แรกและ ชื่อเรื่อง ไปยังคอลัมน์ที่สอง
- บนแท็บ ออกแบบ ในกลุ่ม แสดง/ซ่อน ให้คลิก ผลรวม
แถว ผลรวม จะปรากฏในตารางคิวรี จัดกลุ่มตาม จะปรากฏขึ้นตามค่าเริ่มต้นในเซลล์ ผลรวม ภายใต้แต่ละเขตข้อมูลในคิวรี - ในตารางคิวรี ภายใต้ ชื่อเรื่อง ในแถว ผลรวม ให้คลิก นับจํานวน
- บนแท็บ ออกแบบ ในกลุ่ม ผลลัพธ์ ให้คลิก เรียกใช้
ผล จํานวนของปัญหาที่กําหนดต่อบุคคลจะแสดงในมุมมองแบบแฟลต
เมื่อต้องการนับจํานวนบุคคลที่ได้รับมอบหมายแต่ละปัญหา
- เปิดคิวรีในมุมมองออกแบบ
- ในตัวอย่างนี้ ให้เพิ่มตารางประเด็น
- ลากเขตข้อมูลที่คุณต้องการใช้ไปยังตารางคิวรี ในตัวอย่างนี้ ให้ลาก ชื่อเรื่อง ไปยังคอลัมน์แรก แล้วลาก มอบหมายให้ ไปยังคอลัมน์ที่สอง
- บนแท็บ ออกแบบ ในกลุ่ม แสดง/ซ่อน ให้คลิก ผลรวม
แถว ผลรวม จะปรากฏในตารางคิวรี จัดกลุ่มตาม จะปรากฏขึ้นตามค่าเริ่มต้นในเซลล์ ผลรวม ภายใต้เขตข้อมูล ชื่อเรื่อง ในคิวรี นิพจน์ จะปรากฏตามค่าเริ่มต้นในเซลล์ ผลรวม ภายใต้เขตข้อมูล มอบหมายให้ เนื่องจากคุณไม่สามารถดําเนินการ จัดกลุ่มตาม บนเขตข้อมูลที่มีหลายค่าได้โดยตรง เฉพาะ <ชื่อ>เขตข้อมูล เขตข้อมูลค่า - ในตารางคิวรี ภายใต้ มอบหมายให้ ในแถว ผลรวม ให้คลิก นับจํานวน
- บนแท็บ ออกแบบ ในกลุ่ม ผลลัพธ์ ให้คลิก เรียกใช้
ผล จํานวนบุคคลที่มอบหมายต่อปัญหาจะแสดงในมุมมองแบบแฟลต
ใช้คิวรีแบบใช้ผนวกข้อมูลกับเขตข้อมูลที่มีหลายค่า
คุณสามารถแทรกค่าเดียวลงในเขตข้อมูลแบบหลายค่าได้โดยใช้คิวรีแบบใช้ผนวกข้อมูล ตัวอย่างเช่น สมมติว่าคุณต้องการเพิ่ม "Tom Michaels" ลงในเขตข้อมูล AssignedTo multivalued ในตาราง Issues
หมาย เหตุ นี่เป็นคิวรีแบบใช้ผนวกข้อมูลชนิดเดียวที่ทํางานกับเขตข้อมูลแบบหลายค่า
- เปิดคิวรีในมุมมองออกแบบ
- เพิ่มตารางประเด็น
- บนแท็บ ออกแบบ ให้คลิก ผนวก
- ในกล่องโต้ตอบ ผนวก ให้เลือก ปัญหา แล้วคลิก ตกลง
- ในแถว ผนวกไปยัง ของเส้นตารางออกแบบ ให้เลือก มอบหมายให้.Value
- ในแถว เขตข้อมูล ของตารางออกแบบ ให้ใส่ "Tom Michaels"
- เมื่อต้องการจํากัดการดําเนินการผนวกกับปัญหาที่เฉพาะเจาะจง ให้เพิ่มเขตข้อมูลลงในตารางออกแบบ เช่น ชื่อเรื่อง เอา ชื่อเรื่อง ออกจากแถว ผนวกไปยัง แล้วใส่เกณฑ์ เช่น "ปัญหา 3"
- บนแท็บ ออกแบบ ในกลุ่ม ผลลัพธ์ ให้คลิก เรียกใช้
Access อาจขอให้คุณยืนยันว่าจะผนวกแถวที่เลือกหรือไม่ คลิก ใช่ เพื่อแทรกแถว หรือคลิก ไม่ใช่ เพื่อยกเลิก
ผล ขณะนี้ "Tom Michaels" ถูกเพิ่มลงในเขตข้อมูล มอบหมายให้ สําหรับปัญหาที่ 3
สำคัญ คุณไม่สามารถใช้คิวรีแบบใช้ผนวกข้อมูลที่อ้างอิงตารางที่มีเขตข้อมูลแบบหลายค่าได้ ตัวอย่างเช่น แบบสอบถามต่อไปนี้ไม่ถูกต้อง
INSERT INTO [NewIssues] ( ID, Title, AssignedTo ) SELECT Issues.ID, Issues.Title, Issues.AssignedTo FROM Issues;
ใช้คิวรีแบบใช้อัปเดตข้อมูลกับเขตข้อมูลที่มีหลายค่า
คุณสามารถใช้คิวรีแบบใช้อัปเดตข้อมูลเพื่อเปลี่ยนค่าเดียวในเขตข้อมูลที่มีหลายค่าเป็นค่าอื่น ในตัวอย่างนี้ คุณต้องการอัปเดตเขตข้อมูลแบบหลายค่าของ AssignedTo เพื่อแทนที่ "Kelly Rollin" ด้วย "Lisa Miller"
- เปิดคิวรีในมุมมองออกแบบ
- เพิ่มตารางประเด็น
- บนแท็บ ออกแบบ ให้คลิก อัปเดต
- ลาก มอบหมายให้.ค่า ไปยังตาราง คิวรี
- ในแถว อัปเดตเป็น ให้ใส่ "Lisa Miller"
- ในแถว เกณฑ์ ให้ใส่ "Kelly Rollin"
- บนแท็บ ออกแบบ ในกลุ่ม ผลลัพธ์ ให้คลิก เรียกใช้
Access อาจขอให้คุณยืนยันว่าจะผนวกแถวที่เลือกหรือไม่ คลิก ใช่ เพื่อแทรกแถว หรือคลิก ไม่ใช่ เพื่อยกเลิก
ผล Lisa Miller แทนที่ Kelly Rollin ในเขตข้อมูล AssignedTo สําหรับปัญหาที่สอดคล้องกันทั้งหมด
ใช้คิวรีแบบใช้ลบข้อมูลกับเขตข้อมูลที่มีหลายค่า
เมื่อคุณทํางานกับตารางที่มีเขตข้อมูลแบบหลายค่า คุณสามารถใช้คิวรีแบบใช้ลบข้อมูลเพื่อลบระเบียนที่มีค่าเฉพาะในเขตข้อมูลแบบหลายค่า หรือเพื่อลบค่าเฉพาะจากเขตข้อมูลที่มีหลายค่าในระเบียนทั้งหมดในตาราง ในตัวอย่างต่อไปนี้ สมมติว่าคุณต้องการลบ "David Hamilton" ออกจากตารางปัญหา
สำคัญ เมื่อคุณใช้คิวรีแบบใช้ลบข้อมูลเพื่อลบเขตข้อมูลที่มีหลายค่าที่มีข้อมูลอยู่ คุณจะสูญเสียข้อมูลนั้นอย่างถาวร ซึ่งคุณไม่สามารถเลิกทําการลบได้ ด้วยเหตุผลดังกล่าว คุณควรสำรองฐานข้อมูลของคุณก่อนที่จะลบเขตข้อมูลตารางหรือคอมโพเนนต์อื่น ๆ ของฐานข้อมูล
เมื่อต้องการลบค่าที่เฉพาะเจาะจงจากเขตข้อมูลแบบหลายค่าในระเบียนทั้งหมด
- บนแท็บ สร้าง ในกลุ่ม คิวรี ให้คลิก การออกแบบคิวรี
- เพิ่มตารางประเด็น
- เปิดคิวรีในมุมมองออกแบบ
- บนแท็บ ออกแบบ ให้คลิก ลบ
- ในแถว เกณฑ์ ให้ใส่ "David Hamilton"
- บนแท็บ ออกแบบ ในกลุ่ม ผลลัพธ์ ให้คลิก เรียกใช้
Access อาจขอให้คุณยืนยันว่าจะลบระเบียนหรือไม่ คลิก ใช่ เพื่อลบระเบียน หรือคลิก ไม่ใช่ เพื่อยกเลิก
ผล David Hamilton จะถูกนําออกจากปัญหาที่สอดคล้องกันทั้งหมด
ลบระเบียนที่มีค่าที่เฉพาะเจาะจงในเขตข้อมูลแบบหลายค่า
บนแท็บ สร้าง ในกลุ่ม คิวรี ให้คลิก การออกแบบคิวรี
เพิ่มตารางประเด็น
เปิดคิวรีในมุมมองออกแบบ
บนแท็บ ออกแบบ ให้คลิก กลุ่ม ลบ
บนแท็บ ออกแบบ ในกลุ่ม ผลลัพธ์ ให้คลิกลูกศรภายใต้ มุมมอง แล้วคลิก มุมมอง SQL
ใส่คําสั่ง SQL ต่อไปนี้:
DELETE FROM Issues WHERE (((Issues.AssignedTo.Value)="David Hamilton"));หมาย เหตุ ในกรณีนี้ คุณสามารถใช้คําสั่ง SQL ได้เท่านั้น ไม่ใช่ตารางออกแบบ ถ้าคุณสลับไปยังมุมมองเส้นตารางออกแบบ Access จะเพิ่มเครื่องหมายดอกจัน (*) หลังคําสั่ง DELETE ซึ่งคุณควรเอาออกจากมุมมอง SQL
บนแท็บ ออกแบบ ในกลุ่ม ผลลัพธ์ ให้คลิก เรียกใช้
Access อาจขอให้คุณยืนยันว่าจะลบระเบียนหรือไม่ คลิก ใช่ เพื่อลบระเบียน หรือคลิก ไม่ใช่ เพื่อยกเลิก
ผล ปัญหาทั้งหมดที่เดวิด แฮมิลตัน ถูกกําหนดให้ออก