ในการวิเคราะห์คิวรี (Query Analysis) สำหรับคำสั่ง SELECT ที่เชื่อมตารางสามตารางและมีเงื่อนไข WHERE ซับซ้อน ตัวเลือกใดต่อไปนี้ที่สามารถปรับปรุงประสิทธิภาพได้?

สร้างดัชนีบนคอลัมน์ที่ใช้ในเงื่อนไข WHERE และคีย์ที่ใช้เชื่อมตารางตามแผน query
สร้างดัชนีเฉพาะคอลัมน์ที่แสดงใน SELECT แม้ไม่ได้ใช้กรองหรือเชื่อมข้อมูล
สร้างดัชนีทุกคอลัมน์ของทั้งสามตารางโดยไม่ตรวจแผนและภาระการเขียน
ลบเงื่อนไข WHERE ออกแล้วกรองผลลัพธ์ในโปรแกรมหลังดึงทุกแถวจากฐานข้อมูล

เฉลยอธิบาย

ดัชนีควรสัมพันธ์กับคอลัมน์และตัวดำเนินการที่ query ใช้ค้นหาและเชื่อมแถว ดังนั้นคำตอบที่เหมาะที่สุดคือ “สร้างดัชนีบนคอลัมน์ที่ใช้ในเงื่อนไข WHERE และคีย์ที่ใช้เชื่อมตารางตามแผน query” ส่วนตัวลวงที่ใกล้เคียงที่สุดไม่ผ่านเพราะ คอลัมน์ผลลัพธ์อย่างเดียวอาจไม่ช่วยค้นหาและเชื่อมแถวที่ query ต้องอ่าน

ข้อสอบอื่นในวิชาความรู้เกี่ยวกับระบบฐานข้อมูล (Database System) และ ระบบการบริหารจัดการข้อมูล (Database Management System)

ดูข้อสอบวิชานี้ทั้งหมด →