حسابات متطورة في إطار نظام SQL: استخدام وظائف ويندو لتحليل البيانات
وتشكل وظائف النافذة في نظام SQL أدوات قوية تتيح إجراء تحليلات وحسابات معقدة على نطاق مجموعات من الجداول، وهي تتيح للمستعملين أداء عمليات مثل عمليات المجاميع، والرتب، والمتوسطات المتحركة دون الحاجة إلى مجموعات فرعية أو جداول مؤقتة.
فهم وظائف ويندو
وتعمل وظائف النافذة على مجموعة محددة من الصفوف المتصلة بالصف الحالي، تحددها شروط " OVERW " ، مما يتيح إجراء حسابات تنظر في عدة صفات في إطار تقسيم للبيانات، مما يجعل التحليل أكثر كفاءة وقابلية للقراءة.
الأنواع المشتركة من وظائف ويندو
- RANKING AND DENSE RANK():] Assigns rankings to rows within a partition.
- ROW NUMBER(): ] Provides a unique sequential number for each row.
- LEADING and LAG():] Access data from subsequent or previous rows.
- SUMING, AVGING, MINING, MAX(): Aggregate functions used as window functions for running totals and averages.
التطبيقات العملية
وتستخدم وظائف النافذة في سيناريوهات مختلفة مثل حساب المجاميع الجارية، ووضع التصنيفات، وتحليل الاتجاهات بمرور الوقت، وهي مفيدة بصفة خاصة في التقارير المالية، وتحليل المبيعات، ومقاييس الأداء.
مثال: حساب التشغيل الإجمالي
ويبيّن الاستفسار التالي عن " SQL " كيفية حساب مجموع المبيعات الجارية لكل منتج: