วิธีใช้ฟังก์ชัน QUERY ของ Google ชีต
ฟังก์ชัน QUERY ให้คุณดึงข้อมูลจากช่วงหรือทั้งแผ่นข้อมูลโดยใช้คำสั่งคิวรีที่ยืดหยุ่น การเรียนรู้วิธีใช้ฟังก์ชัน QUERY ของ Google ชีตช่วยให้คุณเข้าถึงเครื่องมือค้นหาที่มีประสิทธิภาพ
หากคุณเคยเขียนคำสั่ง SQL เพื่อดึงข้อมูลออกจากฐานข้อมูล คุณจะรู้จักฟังก์ชัน QUERY ถ้าคุณไม่มีประสบการณ์ด้านฐานข้อมูล ฟังก์ชัน QUERY ก็ยังง่ายต่อการเรียนรู้
ฟังก์ชัน QUERY คืออะไร?
ฟังก์ชั่นนี้มีสามพารามิเตอร์หลัก:
=QUERY(ข้อมูล แบบสอบถาม ส่วนหัว)
พารามิเตอร์เหล่านี้ค่อนข้างตรงไปตรงมา
- ข้อมูล: ช่วงของเซลล์ที่มีข้อมูลต้นทาง
- แบบสอบถาม: ข้อความค้นหาที่อธิบายวิธีดึงสิ่งที่คุณต้องการจากแหล่งข้อมูล
- ส่วนหัว: อาร์กิวเมนต์ทางเลือกที่ให้คุณรวมหลายส่วนหัวในช่วงแหล่งที่มาเป็นส่วนหัวเดียวในแผ่นงานปลายทาง
ความยืดหยุ่นและประสิทธิภาพของฟังก์ชัน QUERY มาจากอาร์กิวเมนต์ Query ดังที่คุณเห็นด้านล่าง
วิธีสร้างสูตร QUERY อย่างง่าย
สูตร QUERY มีประโยชน์อย่างยิ่งเมื่อคุณมีชุดข้อมูลขนาดใหญ่มากซึ่งคุณจำเป็นต้องแยกและกรองข้อมูล
ตัวอย่างต่อไปนี้ใช้สถิติผลการปฏิบัติงานของโรงเรียนมัธยมศึกษาตอนปลายของสหรัฐฯ SAT ในตัวอย่างนี้ คุณจะได้เรียนรู้วิธีเขียนสูตร QUERY ง่ายๆ ที่ส่งกลับโรงเรียนมัธยมทั้งหมดและข้อมูลของโรงเรียนที่มีคำว่า "นิวยอร์ก" เป็นชื่อของโรงเรียน
-
สร้างแผ่นงานใหม่สำหรับวางผลลัพธ์ของคิวรี ในเซลล์บนซ้ายประเภท =แบบสอบถาม(. เมื่อคุณทำเช่นนี้ คุณจะเห็นหน้าต่างป๊อปอัปพร้อมอาร์กิวเมนต์ที่จำเป็นต้องมี ตัวอย่าง และข้อมูลที่เป็นประโยชน์เกี่ยวกับฟังก์ชัน
-
ถัดไป สมมติว่าคุณมีข้อมูลต้นฉบับใน Sheet1 ให้กรอกฟังก์ชันดังนี้:
=ข้อความค้นหา (Sheet1!A1:F460,"SELECT B, C, D, E, F WHERE B LIKE '%New York%'").
สูตรนี้มีอาร์กิวเมนต์ดังต่อไปนี้:
- ช่วงของเซลล์: ช่วงข้อมูลใน A1 ถึง F460 ใน Sheet1
- คำสั่ง SELECT: คำสั่ง SELECT ที่เรียกใช้ข้อมูลใดๆ ในคอลัมน์ B, C, D, E และ F โดยที่คอลัมน์ B มีข้อความที่มีคำว่า "New York" อยู่ในนั้น
อักขระ "%" เป็นอักขระตัวแทนที่คุณสามารถใช้ค้นหาส่วนของสตริงหรือตัวเลขในชุดข้อมูลใดก็ได้ การเว้น "%" ไว้ด้านหน้าสตริงจะคืนค่าชื่อโรงเรียนที่ขึ้นต้นด้วยข้อความ "นิวยอร์ก"
-
หากคุณต้องการค้นหาชื่อโรงเรียนที่แน่นอนจากรายการ คุณสามารถพิมพ์ข้อความค้นหา:
=แบบสอบถาม (Sheet1!A1:F460,"SELECT B, C, D, E, F โดยที่ B = 'New York Harbor High School'").
ใช้ = โอเปอเรเตอร์จะค้นหาค่าที่ตรงกันทั้งหมด และสามารถใช้เพื่อค้นหาข้อความหรือตัวเลขที่ตรงกันในคอลัมน์ใดก็ได้
เนื่องจากฟังก์ชัน QUERY ของ Google ชีตนั้นเข้าใจง่ายและใช้งานได้ง่ายมาก คุณจึงสามารถดึงข้อมูลใดๆ ออกจากชุดข้อมูลขนาดใหญ่ได้โดยใช้คำสั่งการสืบค้นง่ายๆ เช่นเดียวกับด้านบน
ใช้ฟังก์ชัน QUERY กับตัวดำเนินการเปรียบเทียบ
ตัวดำเนินการเปรียบเทียบช่วยให้คุณใช้ฟังก์ชัน QUERY เพื่อกรองข้อมูลที่ไม่ตรงตามเงื่อนไขออก
คุณสามารถเข้าถึงโอเปอเรเตอร์ต่อไปนี้ทั้งหมดในฟังก์ชัน QUERY:
- =: ค่าตรงกับค่าการค้นหา
- <: ค่าน้อยกว่าค่าที่ค้นหา
- >: ค่ามากกว่าค่าที่ค้นหา
- <=: ค่าน้อยกว่าหรือเท่ากับค่าที่ค้นหา
- >=: ค่ามากกว่าหรือเท่ากับค่าการค้นหา
- <> และ !=: ค่าการค้นหาและค่าต้นทางไม่เท่ากัน
ใช้ชุดข้อมูลตัวอย่าง SAT เดียวกันข้างต้น มาดูวิธีดูว่าโรงเรียนใดมีค่าเฉลี่ยคณิตศาสตร์เฉลี่ยสูงกว่า 500 คะแนน
-
ในเซลล์ด้านซ้ายบนของแผ่นงานเปล่า ให้กรอกฟังก์ชัน QUERY ดังนี้
=แบบสอบถาม (Sheet1!A1:F460,"SELECT B, C, D, E, F โดยที่ E > 500")
สูตรนี้เรียกข้อมูลใดๆ ที่คอลัมน์ E มีค่าที่มากกว่า 500
-
คุณยังสามารถรวมตัวดำเนินการทางตรรกะ เช่น AND และ OR เพื่อค้นหาเงื่อนไขต่างๆ ได้ ตัวอย่างเช่น หากต้องการดึงคะแนนเฉพาะโรงเรียนที่มีผู้สอบมากกว่า 600 คนและมีค่าเฉลี่ยการอ่านที่สำคัญระหว่าง 400 ถึง 600 คุณจะต้องพิมพ์ฟังก์ชัน QUERY ต่อไปนี้:
=แบบสอบถาม (Sheet1!A1:F460,"SELECT B, C, D, E, F โดยที่ C > 600 AND D > 400 AND D < 600")
ตัวดำเนินการเปรียบเทียบและตรรกะช่วยให้คุณดึงข้อมูลจากสเปรดชีตต้นทางได้หลายวิธี ช่วยให้คุณสามารถกรองข้อมูลที่สำคัญออกจากชุดข้อมูลขนาดใหญ่ได้
การใช้ฟังก์ชัน QUERY ขั้นสูง
มีคุณลักษณะอื่นๆ สองสามอย่างที่คุณสามารถเพิ่มลงในฟังก์ชัน QUERY ด้วยคำสั่งเพิ่มเติม คำสั่งเหล่านี้ช่วยให้คุณสามารถรวมค่า นับมูลค่า ข้อมูลการสั่งซื้อ และค้นหาค่าสูงสุด
-
การใช้ GROUP ในฟังก์ชัน QUERY ช่วยให้คุณสามารถรวมค่าต่างๆ ได้หลายแถว ตัวอย่างเช่น คุณสามารถเฉลี่ยเกรดการทดสอบสำหรับนักเรียนแต่ละคนโดยใช้ฟังก์ชัน GROUP เมื่อต้องการทำเช่นนี้ พิมพ์:
=แบบสอบถาม (Sheet1!A1:B24,"SELECT A, AVG(B) GROUP BY A")
-
เมื่อใช้ COUNT ในฟังก์ชัน QUERY คุณสามารถนับจำนวนโรงเรียนที่มีคะแนนเฉลี่ยการเขียนมากกว่า 500 โดยใช้ฟังก์ชัน QUERY ต่อไปนี้
=QUERY(Sheet1!A2:F460,"SELECT B, COUNT (F) GROUP BY B")
-
เมื่อใช้ ORDER BY ในฟังก์ชัน QUERY คุณสามารถค้นหาโรงเรียนที่มีคะแนนเฉลี่ยทางคณิตศาสตร์สูงสุด และจัดลำดับรายการด้วยคะแนนเหล่านั้น
=QUERY(Sheet1!A2:F460,"SELECT B, MAX (E) GROUP BY B ORDER BY MAX(E)")