المشكلة: البيانات الخام موزعة على عدة جداول (الرحلات، شركات الطيران، المطارات، الطائرات، الطقس)، ولا تجيب وحدها عن أي سؤال. المطلوب هو ربطها واستخراج إجابات واضحة لأسئلة الإدارة، مثل: أي شركة تتأخر أكثر؟ ومتى يحدث التأخير؟ وهل الطقس هو السبب؟
الحل: بنيت قاعدة بيانات علاقية بخمسة جداول مترابطة بمفاتيح أساسية وأجنبية، وحمّلت فيها بيانات حقيقية لـ 336,776 رحلة من مطارات نيويورك، ثم كتبت 8 استعلامات SQL تربط الجداول وتجيب عن الأسئلة مباشرة.
أبرز النتائج:
أكثر الشركات تأخرًا: Frontier بمتوسط 21.9 دقيقة، بينما تصل طيران ألاسكا مبكرة بمتوسط 9.9 دقيقة.
التأخير يتراكم خلال اليوم: من 0.7 دقيقة الساعة 5 صباحًا إلى 24.8 دقيقة الساعة 7 مساءً.
الضباب يضاعف التأخير: 29.7 دقيقة عند ضعف الرؤية مقابل 11 دقيقة في الجو الصافي.
أسوأ يوم في السنة: 8 مارس، بمتوسط تأخير 83.5 دقيقة وإلغاء 180 رحلة.
عمر الطائرة لا يفسر التأخير: الطائرات الأقدم من 20 سنة لم تكن أسوأ.
التقنيات: ربط الجداول (JOIN)، تجميع البيانات (GROUP BY)، تصنيفات CASE، استعلامات CTE، ودوال النوافذ (Window Functions).
الأدوات: SQL، Python، pandas، SQLite، DBeaver
ملاحظة: مشروع تطبيقي على بيانات عامة حقيقية (nycflights13 من مكتب إحصاءات النقل الأمريكي)، وليس عملًا لعميل.