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