ในการสอบถามแท็บไขว้ Microsoft Access คุณสามารถระบุเพียงหนึ่งฟิลด์หรือคำนวณเป็นค่า บ่อยครั้ง คุณอาจต้องการแสดงมากกว่าหนึ่งค่าในแบบสอบถาม
ตัวอย่างเช่น ตัวอย่างต่อไปนี้แสดงคอลัมน์ที่สองของข้อมูลสำหรับแต่ละบริษัท การนับจำนวนของใบสั่ง และผลรวมของใบสั่งสำหรับทุกปี:
Company Name 1989 Orders 1989 Total 1990 Orders 1990 Total
--------------------------------------------------------------
ABC Company 12 $855.00 15 $1010.25
XYZ Company 1017 $22045.57 1050 $25345.29
ชนิดของแบบสอบถามนี้บางครั้งเรียกว่าแบบสอบถามเขตข้อมูลหลายค่า
หมายเหตุ: การสาธิตของเทคนิคหนึ่งที่ใช้ในบทความนี้สามารถดูได้ในแฟ้มตัวอย่าง Qrysmp97.exe สำหรับข้อมูลเกี่ยวกับวิธีการขอรับแฟ้มตัวอย่างนี้ โปรดดูบทความในฐานความรู้ของ Microsoft ต่อไปนี้:
182568
(http://support.microsoft.com/kb/182568/EN-US/
)
ACC97: แบบสอบ Microsoft Access 97 ตัวอย่างถามพร้อมใช้งานในศูนย์ดาวน์โหลด
เมื่อต้องการสร้างการสอบถามแท็บไขว้เขตข้อมูลค่าหลาย คุณต้องสร้างการสอบถามแบบแท็บไขว้ที่แยกต่างหากสองกับส่วนหัวของคอลัมน์ที่ถาวรสำหรับแต่ละค่าที่คุณต้องการคำนวณ แบบสอบถามเหล่านี้สองสามารถนั้นสามารถเข้าร่วม โดยใช้แบบสอบถามที่เลือกเพื่อแสดงผลลัพธ์ที่ต้องการ
ตัวอย่างต่อไปนี้ใช้ฐานข้อมูลตัวอย่าง Northwind.mdb ใน 7.0 รุ่นการเข้าถึงของ Microsoft และ Microsoft Access 97 (หรือ NWIND.MDB รุ่น 2.0 หรือรุ่นก่อนหน้า) เพื่อสร้างแบบสอบถามที่แสดงผลลัพธ์เหมือนกับตัวอย่างข้างต้น การแสดงจำนวนที่ใช้ในการขาย และยอดรวมสำหรับแต่ละปีสำหรับแต่ละบริษัท
ขั้นตอนที่หนึ่ง: สร้างการสอบถามแท็บไขว้ผลรวมของใบสั่ง
เมื่อต้องการสร้างแบบสอบถามแบบแท็บไขว้ผลรวมของใบสั่ง ดำเนินการดังต่อไปนี้:
- เปิดตัวอย่างฐานข้อมูล Northwind.mdb (หรือ NWIND.MDB รุ่น 2.0 หรือรุ่นก่อนหน้า) และสร้างการสอบถามแท็บไขว้ต่อไปนี้ที่ใช้ตามใบสั่งการ ราย ละเอียดของใบสั่ง และตารางลูกค้า
Query: Order Total
------------------
Type: Crosstab Query
Join: Customers.[CustomerID] <-> Orders.[CustomerID]
NOTE: In versions 1.x and 2.0, there is a space in Customer ID.
Join: Orders.[OrderID] <-> Order Details.[OrderID]
NOTE: In versions 1.x and 2.0, there is a space in Order ID.
Field: CompanyName
Table Name: Customers
Total: Group By
Crosstab: Row Heading
NOTE: In versions 1.x and 2.0, there is a space in Company Name.
Field: Expr1: Year([OrderDate]) & " " & "Order Total"
Table Name:
Total: Group By
Crosstab: Column Heading
NOTE: In versions 1.x and 2.0, there is a space in Order Date.
Field: Expr2: Sum(CCur([UnitPrice]*[Quantity]*(1.-[Discount])))
Table Name:
Total: Expression
Crosstab: Value
NOTE: In versions 1.x and 2.0, there is a space in Unit Price.
- เลือกแบบสอบถาม โดยการคลิกตามที่ต่าง ๆ บนพื้นที่สีเทาในครึ่งบนของกริดแบบสอบถาม คลิก'คุณสมบัติของแบบสอบถาม'บนเมนูมุมมอง เลือกกล่องกาเครื่องหมายของส่วนหัวของคอลัมน์ถาวร และในกล่องส่วนหัวของคอลัมน์ถาวรพิมพ์รายการเหมาะสมกับรุ่นของ Microsoft ในการเข้าถึง:
Version 1.x: "1989 Order Total";"1990 Order Total";"1991 Order
Total";"1992 Order Total"
Version 2.0: "1991 Order Total";"1992 Order Total";"1993 Order
Total";"1994 Order Total"
Version 7.0: "1993 Order Total";"1994 Order Total";"1995 Order
Total"
Version 97: "1994 Order Total";"1995 Order Total";"1996 Order
Total"
หมายเหตุ: ใน Microsoft Access รุ่น 2.0, 7.0 และ 97 คุณสมบัติ FixedColumnHeadings ถูกเรียกส่วนหัวของคอลัมน์
ขั้นที่สอง: สร้างแบบสอบถามแบบแท็บไขว้ของจำนวนครั้งที่ใบสั่ง
- สร้างการสอบถามแท็บไขว้ต่อไปนี้ที่ใช้ตามใบสั่งการและตารางลูกค้า:
Query: Order Count
------------------
Type: Crosstab Query
Join: Customers.[CustomerID] <-> Orders.[CustomerID]
NOTE: In versions 1.x and 2.0, there is a space in Customer ID.
Field: CompanyName
Table Name: Customers
Total: Group By
Crosstab: Row Heading
NOTE: In versions 1.x and 2.0, there is a space in Company Name.
Field: Expr1: Year([OrderDate]) & " " & "Order Count"
Table Name:
Total: Group By
Crosstab: Column Heading
NOTE: In versions 1.x and 2.0, there is a space in Order Date.
Field: OrderID
Table Name: Orders
Total: Count
Crosstab: Value
NOTE: In versions 1.x and 2.0, there is a space in Order ID.
- เลือกแบบสอบถาม โดยการคลิกตามที่ต่าง ๆ บนพื้นที่สีเทาในครึ่งบนของกริดแบบสอบถาม คลิก'คุณสมบัติของแบบสอบถาม'บนเมนูมุมมอง เลือกกล่องกาเครื่องหมายของส่วนหัวของคอลัมน์ถาวร และในกล่องส่วนหัวของคอลัมน์ถาวรพิมพ์รายการเหมาะสมกับรุ่นของ Microsoft ในการเข้าถึง:
Version 1.x: "1989 Order Count";"1990 Order Count";"1991 Order
Count";"1992 Order Count"
Version 2.0: "1991 Order Count";"1992 Order Count";"1993 Order
Count";"1994 Order Count"
Version 7.0: "1993 Order Count";"1994 Order Count";"1995 Order
Count"
Version 97: "1994 Order Count";"1995 Order Count";"1996 Order
Count"
หมายเหตุ: ใน Microsoft Access รุ่น 2.0, 7.0, 97 คุณสมบัติ FixedColumnHeadings ถูกเรียกส่วนหัวของคอลัมน์
ขั้นที่สาม: สร้างแบบสอบถามหลายค่า
- สร้างแบบสอบถามเลือกตามใบสั่งรวม และแบบสอบ ถามแท็บไขว้ของจำนวนครั้งที่ใบสั่ง คุณจะใช้ CompanyName เช่นเดียวกับฟิลด์ผลรวมของใบสั่งและจำนวนของใบสั่งสำหรับปีผลลัพธ์ซึ่งคุณต้องการดู ตัวอย่างด้านล่างนี้ใช้สองปีล่าสุดของผลรวมของใบสั่งและจำนวนของใบสั่งใน Microsoft Access 97
Query: Multiple Values
----------------------
Join: Order Total.[CompanyName] <-> Order Count.[CompanyName]
NOTE: In versions 1.x and 2.0, there is a space in Company Name.
Field: CompanyName
Table Name: Order Count
Show: Yes
Field: 1995 Order Count
Table Name: Order Count
Show: Yes
Field: 1995 Order Total
Table Name: Order Total
Show: Yes
Field: 1996 Order Count
Table Name: Order Count
Show: Yes
Field: 1996 Order Total
Table Name: Order Total
Show: Yes
การรันการสอบถามค่าหลายผลลัพธ์ในตารางที่มีลักษณะต่อไปนี้:
Company Name 1995 Order Count 1995 Order Total 1996 Order Count..
--------------------------------------------------------------------------
Alfred's Futterkiste 3 $2,022.50 3
Ana Trujillo 2 $799.75 1
Antonio Moreno 5 $5,960.78 1
หมายเหตุ: เทคนิคนี้ไม่สามารถใช้งานถ้าฟิลด์ที่ระบุสำหรับการ concatenation (One(expr1)) ขั้นเป็นเขตข้อมูลมากกว่าหนึ่งตารางเข้าร่วมในการสอบถาม ไม่มีวิธีการบังคับให้แบบสอบถามเพื่อยอมรับชื่อตารางในนิพจน์โดยไม่ต้องการสร้างข้อผิดพลาด-1310 ที่สงวนไว้ If
you add the table name to the Table row, you generate a syntax error. If
you leave the table name out completely, you generate an "ambiguous
reference" error.
For more information about crosstab queries, search for "crosstab queries,
creating," and then "Create a crosstab query without using a wizard," using
the Microsoft Access 97 Help Index.
หมายเลขบทความ (Article ID): 109939 - รีวิวครั้งสุดท้าย: 6 มกราคม 2554 - Revision: 2.0
ใช้กับ
- Microsoft Access 1.0 Standard Edition
- Microsoft Access 1.1 Standard Edition
- Microsoft Access 2.0 Standard Edition
- Microsoft Access 97 Standard Edition
| kbinfo kbmt KB109939 KbMtth |
แปลโดยคอมพิวเตอร์ข้อมูลสำคัญ: บทความนี้แปลโดยซอฟต์แวร์การแปลด้วยคอมพิวเตอร์ของ Microsoft แทนที่จะเป็นนักแปลที่เป็นบุคคล Microsoft มีบทความที่แปลโดยนักแปลและบทความที่แปลด้วยคอมพิวเตอร์ เพื่อให้คุณสามารถเข้าถึงบทความทั้งหมดในฐานความรู้ของเรา ในภาษาของคุณเอง อย่างไรก็ตาม บทความที่แปลด้วยคอมพิวเตอร์นั้นอาจมีข้อบกพร่อง โดยอาจมีข้อผิดพลาดในคำศัพท์ รูปแบบการใช้ภาษาและไวยากรณ์ เช่นเดียวกับกรณีที่ชาวต่างชาติพูดผิดเมื่อพูดภาษาของคุณ Microsoft ไม่มีส่วนรับผิดชอบต่อความคลาดเคลื่อน ความผิดพลาดหรือความเสียหายที่เกิดจากการแปลเนื้อหาผิดพลาด หรือการใช้บทแปลของลูกค้า และ Microsoft มีการปรับปรุงซอฟต์แวร์การแปลด้วยคอมพิวเตอร์อยู่เป็นประจำ
ต่อไปนี้เป็นฉบับภาษาอังกฤษของบทความนี้:
109939
(http://support.microsoft.com/kb/109939/en-us/
)
การปฏิเสธความรับผิดชอบในเนื้อหาของ KB ที่จะไม่มีการปรับปรุงอีกต่อไปบทความนี้กล่าวถึงผลิตภัณฑ์ที่ Microsoft ไม่มีการสนับสนุนอีกต่อไป เนื้อหาของบทความจึงมีการนำเสนอ "ตามลักษณะที่เป็น" และจะไม่มีการปรับปรุงข้อมูลอีก