طَبِّقْهاتعلّم المبدأ، وطبّقه بيدكمقرر 122 · برمجة قواعد البيانات
تقييم الدرس 27

مشروع: من استعلام بطيء إلى سريع

أجب عن الأسئلة ثم اضغط «صحّح ورقتي» في آخر الصفحة. ← العودة إلى الدرس

أسئلة التقييم

تقييم الدرس 27: مشروع: من استعلام بطيء إلى سريع. إجاباتك تُحفظ تلقائيًّا على هذا الجهاز؛ أجب ثم اضغط «صحّح ورقتي».

1السؤال الأول: اختر الإجابة الصحيحة

1) لماذا نضع EXPLAIN ANALYZE على DELETE داخل BEGIN … ROLLBACK؟
2) أين المشكلة الرئيسية في أداء هذا الاستعلام؟
query.sql
SELECT name, (SELECT count(*) FROM orders o WHERE o.customer_id = c.id) FROM customers c;
3) ترتيب الخطوات الصحيح:
4) عند الربط مع البنود، عدد الطلبات الصحيح:
5) أي تحسين غالبًا يعطي أكبر أثر؟

2السؤال الثاني: صح أم خطأ

1) EXPLAIN وحده ينفّذ الاستعلام.
الصواب: خطأ
2) القياس مرة واحدة يكفي دائمًا.
الصواب: خطأ
3) extract على العمود في WHERE يمنع استخدام فهرسه العادي.
الصواب: صح
4) loops في الخطة تعني عدد مرات تنفيذ العقدة.
الصواب: صح
5) الفهرس يعالج دائمًا الاستعلام المترابط البطيء دون إعادة كتابة.
الصواب: خطأ

3السؤال الثالث: أكمل الفراغات من القائمة المنسدلة

1) لعرض الخطة مع الأزمنة الحقيقية: EXPLAIN SELECT …
الإجابة: ANALYZE
2) الاستعلام الفرعي المترابط يظهر في الخطة باسم .
الإجابة: SubPlan
3) ربع سنة الثالث: order_date >= '2025-07-01' AND order_date <
الإجابة: '2025-10-01'

4السؤال الرابع: أسئلة عملية

1) كم طلبًا مدفوعًا في 2025 بالقاعدة الكبيرة؟

query.sql
SELECT count(*) FROM orders WHERE status = 'paid' AND order_date >= '2025-01-01' AND order_date < '2026-01-01';
الناتج الصحيح:
النتيجة · صف واحد
count
2629

2) كم مدينة في القاعدة الكبيرة؟

query.sql
SELECT count(DISTINCT city) FROM customers;
الناتج الصحيح:
النتيجة · صف واحد
count
8
أجب عن الأسئلة ثم اضغط «صحّح ورقتي».

📝 معلم؟ أرسل ملاحظة للمؤلف عن هذا الدرس