ข้ามไปที่เนื้อหาหลัก
การสนับสนุน
ลงชื่อเข้าใช้
ลงชื่อเข้าใช้ด้วย Microsoft
ลงชื่อเข้าใช้หรือสร้างบัญชี
สวัสดี
เลือกบัญชีอื่น
คุณมีหลายบัญชี
เลือกบัญชีที่คุณต้องการลงชื่อเข้าใช้

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

ในบทความนี้

ภาพรวม

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

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

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

  • เมื่อเร็วๆ นี้ใครกันที่ขายได้มากที่สุด

  • ลูกค้าสั่งซื้อครั้งล่าสุดเมื่อใด

  • วันเกิดสามครั้งถัดไปในทีมเมื่อไหร่

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

บทความนี้ถือว่าค่าวันที่ที่คุณใช้มีชนิดข้อมูลวันที่/เวลา ถ้าค่าวันที่ของคุณอยู่ในเขตข้อมูล Text

พิจารณาใช้ตัวกรองแทนคิวรีค่าสูงสุด

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

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

  • ถ้าคุณต้องการส่งกลับจํานวนระเบียนที่ระบุที่มีวันที่ล่าสุดหรือวันที่ล่าสุดในเขตข้อมูล และคุณจะไม่ทราบค่าวันที่ที่แน่นอนหรือไม่ทราบค่าวันที่หรือไม่ทราบคุณสร้างคิวรีค่าสูงสุด For example, to see the five best sales quarters, use a top values query.

For more information about creating and using filters, see the article Apply a filter to view select records in an Access database.

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

เตรียมข้อมูลตัวอย่างให้พร้อมตามตัวอย่าง

ขั้นตอนในบทความนี้จะใช้ข้อมูลในตารางต่อไปนี้

ตารางพนักงาน   

นามสกุล

ชื่อ

ที่อยู่

เมือง

การออกอากาศ CountryOrR

วันเกิด

วันที่ จ้าง

Barnhill

Josh

1 Main St.

New York

USA

05-ก.พ.-2511

10-มิ.ย.-2447

Heloo

Waleded

52 1st St.

Boston

USA

22-พ.ค.-2490

22-พ.ย.-2549

พัชระ

Guido

3122 75th Ave. S.W.

Seattle

USA

11-พ.ย.-2493

11-มี.ค.-2543

Bagel

Philippe ของสุทยภาพ

1 Contoso Blvd.

London

UK

22-มี.ค.-1964

22-มิ.ย.-2541

ราคา

Julian

Calle Smith 2

Mexico City

เม็กซิโก

05-มิ.ย.-1972

05-ม.ค.-2545

Hughes

Christine

3122 75th St. S.

Seattle

USA

23-ม.ค.-2513

23-เม.ย.-2542

มุขใจ

ปัญญา

67 1st St.

Tampa

USA

14-เม.ย.-1964

14-ต.ค.-2547

Birkby

ดานา

2 Nosey Pkwy

Portland

USA

29-ต.ค.-2492

29-มี.ค.-1997

ตาราง EventType    

TypeID

ชนิดของ เหตุการณ์

1

เปิดใช้ผลิตภัณฑ์

2

ฟังก์ชัน Corporate

3

ฟังก์ชัน Private

4

ผู้ระดมทุน

5

งานแสดงสินค้า

6

การบรรยาย

7

บัตรบัตรกบัตร

8

การไปแสดงสินค้า

9

Street Fair

ตารางลูกค้า    

CustomerID

บริษัท

ที่ติดต่อ

1

Contoso, Ltd. กราฟิก

Jonathan Haas

2

Tailspin Toys

Ellen Adams

3

Fabrikam

Carol Philips

4

Wingtip Toys

Lucio Iallo

5

A. Datum

Manā samant

6

Adventure Works

Brian Burke

7

Design Institute

Jaka Stele

8

โรงเรียนศิลปะ

Milena Duomanova

ตารางเหตุการณ์    

ID เหตุการณ์

ชนิดของ เหตุการณ์

ลูกค้า

วันที่ของ เหตุการณ์

ราคา

1

เปิดใช้ผลิตภัณฑ์

Contoso, Ltd.

4/14/2011

$10,000

2

ฟังก์ชัน Corporate

Tailspin Toys

4/21/2011

$8,000

3

งานแสดงสินค้า

Tailspin Toys

1/5/2554

$25,000

4

การไปแสดงสินค้า

Graphic Design Institute

5/13/2011

$4,500

5

งานแสดงสินค้า

Contoso, Ltd.

5/14/2011

$55,000

6

บัตรบัตรกบัตร

โรงเรียนศิลปะ

5/23/2011

$12,000

7

เปิดใช้ผลิตภัณฑ์

A. Datum

6/1/2011

$15,000

8

เปิดใช้ผลิตภัณฑ์

Wingtip Toys

6/18/2011

$21,000

9

ผู้ระดมทุน

Adventure Works

6/22/2011

$1,300

10

การบรรยาย

Graphic Design Institute

6/25/2011

$2,450

11

การบรรยาย

Contoso, Ltd.

4/7/2554

$3,800

1.2

Street Fair

Graphic Design Institute

4/7/2554

$5,500

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

วางข้อมูลตัวอย่างลงในเวิร์กชีต Excel

  1. เริ่มต้น Excel เวิร์กบุ๊กเปล่าจะเปิดขึ้น

  2. กด SHIFT+F11 เพื่อแทรกเวิร์กชีต (คุณจะต้องใช้สี่)

  3. คัดลอกข้อมูลจากตารางตัวอย่างแต่ละตารางลงในเวิร์กชีตเปล่า รวมส่วนหัวของคอลัมน์ (แถวแรก)

สร้างตารางฐานข้อมูลจากเวิร์กชีต

  1. เลือกข้อมูลจากเวิร์กชีตแรก รวมถึงส่วนหัวของคอลัมน์

  2. คลิกขวาที่บานหน้าต่างนําทาง แล้วคลิกวาง

  3. คลิกใช่ เพื่อยืนยันว่าแถวแรกมีส่วนหัวของคอลัมน์อยู่

  4. ทําซ้ําขั้นตอนที่ 1-3 ในแต่ละเวิร์กชีตที่เหลือ

ค้นหาวันที่ล่าสุดหรือน้อยที่สุด

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

สร้างคิวรีค่าสูงสุดพื้นฐาน

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

  2. ดับเบิลคลิกที่ตาราง พนักงาน แล้วคลิกปิด

    ถ้าคุณใช้ข้อมูลตัวอย่าง ให้เพิ่มตารางพนักงานลงในคิวรี

  3. เพิ่มเขตข้อมูลที่คุณต้องการใช้ในคิวรีของคุณลงในตารางออกแบบ คุณสามารถดับเบิลคลิกที่แต่ละเขตข้อมูล หรือลากแล้วปล่อยแต่ละเขตข้อมูลบนเซลล์ว่าง ในแถว เขตข้อมูล

    ถ้าคุณใช้ตารางตัวอย่าง ให้เพิ่มเขตข้อมูลชื่อ นามสกุล และวันเกิด

  4. ในเขตข้อมูลที่มีค่าสูงสุดหรือค่าตด้านล่างของคุณ (เขตข้อมูลวันเกิด ถ้าคุณใช้ตารางตัวอย่าง) ให้คลิกแถวเรียงล>กล่างและเลือกจากน้อยไปหามากหรือจากมากไปหาน้อย

    ลสั่งซื้อการจัดเรียงจากมากไปหาน้อยจะส่งกลับวันที่ล่าสุด และลสั่งซื้อการจัดเรียงจากน้อยไปหามากจะส่งกลับวันที่แรกสุด

    สิ่งสำคัญ: คุณต้องตั้งค่าในแถว เรียง ล> บเขตข้อมูลที่มีวันที่ของคุณเท่านั้น If you specify a sort order for another field, the query does not return the results you want.

  5. บนแท็บออกแบบในกลุ่ม เครื่องมือให้คลิกลูกศรลงที่อยู่ถัดจาก ทั้งหมด(รายการค่าสูงสุด) แล้วใส่จํานวนระเบียนที่คุณต้องการดู หรือเลือกตัวเลือกจากรายการ

  6. คลิก รูปปุ่มเพื่อเรียกใช้คิวรีและแสดงผลลัพธ์ในมุมมองแผ่นข้อมูล

  7. บันทึกคิวรีเป็น NextBirthDays

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

เพิ่มเกณฑ์ลงในคิวรี

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

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

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

  2. ในตารางออกแบบคิวรี ในคอลัมน์ทางด้านขวาของ BirthDate ให้ใส่ดังต่อไปนี้:
    MonthGrid: DatePart("m",[BirthDate])
    นิพจน์นี้จะแยกเดือนจาก BirthDate โดยใช้ฟังก์ชันDatePart

  3. ในคอลัมน์ถัดไปของตารางออกแบบคิวรี ให้ใส่ดังต่อไปนี้:
    DayOfMonthGrid: DatePart("d",[BirthDate])นิพจน์นี้จะแยกวันของเดือนจาก
    BirthDate โดยใช้ฟังก์ชันDatePart

  4. ล้างกล่องกาเครื่องหมาย ในแถว แสดง ของนิพจน์แต่ละนิพจน์สองนิพจน์ที่คุณเพิ่งใส่

  5. คลิกแถว เรียง ล>บแต่ละนิพจน์ แล้วเลือกจากน้อย ไปหามาก

  6. ในแถวเกณฑ์ของคอลัมน์วันเกิด ให้พิมพ์นิพจน์ต่อไปนี้:
    Month([Birth Date]) > Month(Date()) OR Month([Birth Date])= Month(Date()) AND Day([Birth Date])>Day(Date()) ซึ่งนิพจน์นี้จะมีดังต่อไปนี้:

    • เดือน( [วันเกิด]) > Month(Date()) ระบุว่าวันเกิดของพนักงานแต่ละคนอยู่ในเดือนในอนาคต

    • เดือน ([วันเกิด])= Month(Date()) And Day([Birth Date])>Day(Date()) ระบุว่า ถ้าวันเกิดเกิดขึ้นในเดือนปัจจุบัน วันเกิดจะอยู่ในช่วงหรือหลังจากวันปัจจุบัน

      โดยสรุป นิพจน์นี้จะแยกระเบียนใดๆ ที่วันเกิดเกิดขึ้นระหว่างวันที่ 1 มกราคมและวันที่ปัจจุบัน

      เคล็ดลับ:  For more examples of query criteria expressions, see the article Examples of query criteria.

  7. บนแท็บ ออกแบบ ในกลุ่ม การตั้งค่า คิว รี ให้พิมพ์ 3ในกล่อง ส่งกลับ

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

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

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

ค้นหาวันที่ล่าสุดหรือน้อยที่สุดของกลุ่มระเบียน

คุณใช้คิวรีแบบใช้หาผลรวมเพื่อค้นหาวันที่แรกสุดหรือวันที่ล่าสุดของระเบียนที่แบ่งออกเป็นกลุ่ม เช่น เหตุการณ์ที่จัดกลุ่มตามเมือง คิวรีแบบใช้หาผลรวมคือคิวรีแบบใช้เลือกข้อมูลที่ใช้ฟังก์ชันการรวม (เช่นGroup By, Min,Max,Count,FirstและLast)เพื่อคํานวณค่าต่างๆ ของเขตข้อมูลผลลัพธ์แต่ละเขตข้อมูล

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

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

สร้างคิวรีแบบใช้หาผลรวม

กระบวนงานนี้ ใช้ตารางตัวอย่าง Events และ ตารางตัวอย่าง EventType เพื่อ ตอบคําถามนี้:

กิจกรรมล่าสุดของกิจกรรมแต่ละประเภทคือเมื่อใด ยกเว้นบัตรเพลง

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

  2. ดับเบิลคลิกที่ตาราง เหตุการณ์ และ ชนิดเหตุการณ์
    ตารางแต่ละตารางจะปรากฏขึ้นในส่วนบนของตัวออกแบบคิวรี

  3. ดับเบิลคลิกที่เขตข้อมูลชนิดเหตุการณ์ของตาราง EventType และเขตข้อมูล EventDate จากตารางเหตุการณ์เพื่อเพิ่มเขตข้อมูลลงในตารางออกแบบคิวรี

  4. ในตารางออกแบบคิวรี ในแถวเกณฑ์ของเขตข้อมูลEventTypeให้<>บัตรบัตร

    เคล็ดลับ:  For more examples of criteria expressions, see the article Examples of query criteria.

  5. บนแท็บ ออกแบบ ในกลุ่ม แสดง/ ซ่อน ให้คลิกผลรวม

  6. ในตารางออกแบบคิวรี ให้คลิก แถว ผลรวม ของเขตข้อมูล วันที่เหตุการณ์ แล้วคลิกสูงสุด

  7. บนแท็บ ออกแบบ ในกลุ่ม ผลลัพธ์ ให้คลิก มุมมอง แล้วคลิก มุมมอง SQL

  8. ในหน้าต่าง SQL ที่ส่วนท้ายของส่วนย่อย SELECT ให้แทนที่MaxOf1ventDateหลังคีย์เวิร์ด AS ด้วยMostRecent

  9. บันทึกคิวรีเป็น MostRecentSventByType

สร้างคิวรีที่สองเพื่อเพิ่มข้อมูลเพิ่มเติม

กระบวนงานนี้ใช้คิวรี MostRecentSventByType จากกระบวนงานก่อนหน้าเพื่อตอบคําถามนี้:

ใครคือลูกค้าในเหตุการณ์ล่าสุดของแต่ละประเภทเหตุการณ์

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

  2. บนแท็บ คิว รี ให้ดับเบิลคลิกคิวรี MostRecentSventByType

  3. บนแท็บตาราง ให้ดับเบิลคลิกที่ตาราง เหตุการณ์ และตาราง ลูกค้า

  4. ในตัวออกแบบคิวรี ให้ดับเบิลคลิกที่เขตข้อมูลต่อไปนี้

    1. บนตาราง เหตุการณ์ ให้ดับเบิลคลิกที่ EventType

    2. บนคิวรี MostRecentSventByType ให้ดับเบิลคลิกที่ MostRecent

    3. บนตารางลูกค้า ให้ดับเบิลคลิกที่ บริษัท

  5. ในตารางออกแบบคิวรี ในแถวเรียง ล> ของคอลัมน์ ชนิด เหตุการณ์ ให้เลือกจาก น้อยไปหามาก

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

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

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

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

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

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

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

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

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

×