0Pricing
Coding Interview Prep · درس

قراءة مخطط قاعدة البيانات تحت الضغط

كيفية تحليل مخطط جدول غير مألوف بسرعة وطرح أسئلة التوضيح المناسبة في مقابلة مباشرة

قراءة مخطط قاعدة البيانات تحت الضغط درس مجاني في Coding Interview Prep على CoddyKit. هذا هو الدرس 4 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Coding Interview Prep، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Coding Interview Prep 4 دروس في المجموع.

مهارة المقابلة المباشرة

في مقابلة فعلية، يُطلب منكم التعامل مع مخطط غير مألوف وكتابة استعلام له في الحال. يقدم لكم هذا الدرس طريقة هادئة وقابلة للتكرار لقراءة أي مخطط تحت ضغط الوقت.

الخطوة 1: حصر الجداول

الخطوة 1: احصروا الجداول. اقرأوا الأسماء فقط، وحاولوا تخمين الكيان الذي يمثله كل جدول. والاسم الذي يجمع بين كيانين، مثل order_items، يكون عادةً اسم جدول ربط.

الخطوة 2: العثور على المفاتيح الأساسية

الخطوة 2: اعثروا على المفاتيح الأساسية، والتي تُسمى عادةً id أو <table>_id. يحدد المفتاح مستوى تفاصيل الجدول، أي معنى الصف الواحد، حتى لا تضاعف عمليات الربط الصفوف.

الخطوة 3: تتبّع المفاتيح الأجنبية

الخطوة 3: تتبّعوا المفاتيح الأجنبية. يشير عمود مثل customer_id إلى customers.id. ارسموا الروابط على شكل أسهم؛ فهي مسارات الربط التي ستستخدمونها.

-- Inferred join path from the foreign keys
SELECT *
FROM order_items oi
JOIN orders o   ON o.id = oi.order_id
JOIN customers c ON c.id = o.customer_id;

الخطوة 4: استنتاج التعددية من المفاتيح

الخطوة 4: استنتجوا التعددية من المفاتيح. فالجدول الذي يحتوي على المفتاح الأجنبي يمثل جانب الكثير، أما الجدول الذي يشير إليه فيمثل جانب الواحد. عميل واحد، وطلبات كثيرة.

الخطوة 5: ملاحظة قابلية القيم لأن تكون NULL والأنواع

الخطوة 5: لاحظوا قابلية القيم لأن تكون NULL والأنواع. يشير المفتاح الأجنبي الذي يقبل NULL غالبًا إلى استخدام LEFT JOIN. وتحققوا أيضًا مما إذا كان التاريخ من النوع DATE فعلًا، أو كان المبلغ رقميًا فعلًا.

الخطوة 6: طرح أسئلة التوضيح المناسبة

الخطوة 6: اطرحوا أسئلة توضيحية. «ما الحالة التي تعني أن الطلب مكتمل؟» «هل البريد الإلكتروني فريد؟» غالبًا ما يضع القائمون على المقابلات نقاطًا غامضة ليروا ما إذا كنتم ستطرحون أسئلة أم ستتابعون العمل بتسرع.

مثال تطبيقي: فهم مخطط في 60 ثانية

طبّقوا الخطوات معًا: اقرأوا أربعة جداول للتجارة الإلكترونية بسرعة، وحددوا مستوى تفاصيل كل منها والمفاتيح الأجنبية. خلال أقل من دقيقة، ستعرفون كل مسارات الربط، وستصبح الإجابة عن أي سؤال ممكنة.

تحويل القراءة إلى استعلام

هل طُلب منكم حساب «إجمالي الإيرادات لكل عميل»؟ لأنكم تتبعتم المفاتيح أولًا، يكاد الاستعلام يكتب نفسه: فالإيرادات موجودة على مستوى تفاصيل بنود الطلب، ومنه نربط صعودًا إلى العميل.

SELECT c.id, c.name, SUM(oi.qty * oi.unit_price) AS revenue
FROM customers c
JOIN orders o      ON o.customer_id = c.id
JOIN order_items oi ON oi.order_id = o.id
GROUP BY c.id, c.name
ORDER BY revenue DESC;

أخطاء شائعة ينبغي الانتباه إليها

انتبهوا إلى الأخطاء المتوقعة: مستوى تفاصيل غير صحيح يؤدي إلى العد المزدوج، أو استخدام ربط داخلي يؤدي إلى إسقاط الصفوف، أو اعتبار البريد الإلكتروني مفتاحًا. تحميكم الخطوات الست من هذه الأخطاء جميعًا.

التفكير بصوت عالٍ يمنحكم نقاطًا

يمنحكم التفكير بصوت عالٍ نقاطًا إضافية. اشرحوا ما تفكرون فيه: «تبدو هذه جداول للتجارة الإلكترونية؛ مستوى التفاصيل هو بند طلب واحد؛ سأربط صعودًا إلى العميل». وهذا يتيح لهم تصحيح فهمكم مبكرًا.

تحقق سريع

طبّقوا الاستدلال بالتعددية على مخطط غير مألوف.

مراجعة

مراجعة الخطوات الست: احصروا الجداول، واعثروا على المفاتيح الأساسية لتحديد مستوى التفاصيل، وتتبعوا المفاتيح الأجنبية، واستنتجوا التعددية، وتحققوا من قابلية القيم لأن تكون NULL، ثم اطرحوا الأسئلة. اقرأوا أولًا، واكتبوا ثانيًا.

الأسئلة الشائعة

هل درس «قراءة مخطط قاعدة البيانات تحت الضغط» مجاني؟

نعم — نص درس «قراءة مخطط قاعدة البيانات تحت الضغط» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Coding Interview Prep، انتقل إلى CoddyKit PRO. تتضمن دورة Coding Interview Prep 4 دروس في المجموع.

ماذا ستتعلم في «قراءة مخطط قاعدة البيانات تحت الضغط»؟

كيفية تحليل مخطط جدول غير مألوف بسرعة وطرح أسئلة التوضيح المناسبة في مقابلة مباشرة تتمرن على Coding Interview Prep مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Coding Interview Prep؟

لا تُشترط خبرة سابقة. Coding Interview Prep على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 4 من أصل 4.

كم من الوقت يستغرق درس «قراءة مخطط قاعدة البيانات تحت الضغط»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Coding Interview Prep هذا؟

نعم. كل درس في Coding Interview Prep يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. ما هي SQL ولماذا يسأل عنها مسؤولو المقابلات؟
  2. ترتيب تنفيذ الاستعلام المنطقي
  3. المفاتيح الأساسية والخارجية والقيود
  4. قراءة مخطط قاعدة البيانات تحت الضغط
← العودة إلى Coding Interview Prep