Saturday 10 March 2018

كيفية حساب المتوسط المتحرك في سكل


إن استخدام متوسط ​​متحرك بسيط لتيسير البيانات هو تقنية شائعة إلى حد ما. في حالة سيئة جدا المثال الأساسي في تعليمات سكل أنيوهير أبعد ما تكون عن البساطة: ما يجعل هذا المثال معقدا جدا إلى جانب بيان المشكلة، أي: حساب المتوسط ​​المتحرك لجميع مبيعات المنتجات، حسب الشهر، في عام 2000. هيريس ما يجعل معقد: مرجعان إلى وظيفة أفغ ()، غروب بي (والتي كلها في حد ذاته يجعل فقط عن أي سيليكت رأس خدش)،. شرط نافذة الشبح شرط نافذة لا حتى استخدام الكلمة ويندو. لذلك إلى أونينيتيتد (الناس الذين يحتاجون إلى أمثلة أكثر من أي شخص آخر) فإنه ليس من الواضح أن نافذة تشارك على الإطلاق. ليس فقط أي شرط نافذة، العقل لك، ولكن واحد الذي يتضمن كل مكون واحد يمكنك التعليمات البرمجية في نافذة: جزء من قبل، شرط مجموعة. ليس شرطا بسيطا ولكن شرطا كاملا رانج، أحدهما له علاقة وثيقة مع أوردر بي. أعرف ما هو الصف، ولكن ما هو ريداكتد هو رانج ولكن الانتظار، ثيريس أكثر: اختيار رانج فوق روز في هذا المثال أمر بالغ الأهمية لعملية الاستعلام الصحيح. (للاطلاع على مناقشة أكثر اكتمالا لهذا المثال بعينه، انظر المثال 23 - حساب متوسط ​​متحرك في جلين بوليس ممتاز أولاب ورقة بيضاء.) الآن، دعونا نعود إلى المسار الصحيح: متوسط ​​متحرك بسيط حقا حقا يعرض المثال التالي 10 يوما بقيمة البيانات جنبا إلى جنب مع المتوسط ​​المتحرك لقيمة اليوم وأيام الأمس: يحدد بند ويندوستس على الخطوط من 21 إلى 23 نافذة متحركة تحتوي على صفين: صف اليوم (الصف الحالي) وصف الأمس (1 بريسدينغ): يحدد أمر النافذة حسب البند يعني بريسدينغ (الصف السابق من قبل t. entrydate) وروز بند يحدد حجم النافذة (دائما صفين). يشير التعبير أفغ (t. value) أوفر توديس على الخط 19 إلى بند ويندو بالاسم، ويخبر سكل في أي مكان لحساب متوسط ​​قيمتي t. value الموجودة في نافذة انزلاق الصفين، لكل صف في مجموعة النتائج. لذلك، بالنسبة لمعدل 2012-02-02 كان المتوسط ​​10 و 20 هو 15.000000، للفترة 2012-02-03 كان متوسط ​​20 و 10 هو 15.000000، للفترة 2012-02-04 متوسط ​​10 و 30 هو 20.000000، 02-10 متوسط ​​10 و 60 هو 35.000000. عفوا، ماذا عن الصف الأول صف 2012-02-01 لا يوجد صف بريسدينغ، لذلك ما هو المتوسط ​​عبر النافذة المتحركة وفقا لجلين باوليس ورقة بيضاء في حالة نافذة متحركة، فمن المفترض أن الصفوف التي تحتوي على نول توجد قيم قبل الصف الأول، وبعد الصف الأخير، في الإدخال. وهذا يعني عندما يكون الإطار المتحرك 2012-02-01 كما رو الحالي، 1 بريسدينغ الصف يحتوي على قيم نول. وعندما يحسب سكل في أي مكان أفغ () يتضمن قيمة نول، فإنه لا تعول نول على الإطلاق. وليس في البسط أو في المقام عند حساب المتوسط. هيريس بروف: ثاتس لماذا توديايافيراج 10.000000 للصف الأول 2012-02-01. بوستيد بي بريك كارتر في 3:47 بمي أعمل مع سكل سيرفر 2008 R2، في محاولة لحساب المتوسط ​​المتحرك. لكل سجل في وجهة نظري، أود أن جمع قيم السجلات السابقة 250، ومن ثم حساب المتوسط ​​لهذا الاختيار. أعمدة الملف الشخصي هي كما يلي: ترانزاكتيونيد فريد. لكل معرف معاملة. أود حساب المتوسط ​​لقيمة العمود، أكثر من 250 سجل سابق. لذلك بالنسبة ل ترانزاكتيونيد 300، قم بتجميع كل القيم من الصفوف السابقة 250 (يتم فرز المشاهدة تنازلي بواسطة ترانزاكتيونيد) ثم في العمود موفافغ اكتب نتيجة متوسط ​​هذه القيم. أنا أتطلع إلى جمع البيانات ضمن مجموعة من السجلات. وسأل 28 أكتوبر 28 في المتوسط: 28 متوسطات الرول في سكل سيرفر الدالات الإجمالية مريحة 8211 أنها حل حاجة العمل وجعلها التنمية سهلة. لسوء الحظ، ليس كل متطلبات العمل من السهل جدا لحلها. Let8217s ننظر في مثال واحد: المتوسطات المتداول. المتوسط ​​المتداول A المتوسط ​​المتداول هو مفهوم بسيط يتم حساب المتوسط ​​على مجموعة فرعية ثابتة من البيانات. غالبا ما تستخدم الحسابات الحسابية المتداولة مع بيانات السلاسل الزمنية وتساعد على إزالة التقلبات قصيرة الأمد مع تسليط الضوء على الاتجاهات طويلة الأجل 8211 فواتير الخدمات العامة غالبا ما تتميز بمتوسط ​​المتداول للاستهلاك لمساعدة العميل على فهم استخدامها. المستهلكين aren8217t تشعر بالقلق إزاء استخدام الكهرباء عالية في يوم واحد في أغسطس عندما كان هناك موجة الحرارة التي تريد أن ترى كيف يتغير استهلاكها مع مرور الوقت. المتوسطات المتداول مع تعبيرات الجدول العام: 2005 8211 2008R2 بدءا من سكل سيرفر 2005 أصبح من السهل كتابة متوسط ​​المتداول في عبارة T-سكل واحدة باستخدام تعبير الجدول المشترك. كتس بسرعة أصبحت شعبية كمية لا يصدق من وظائف صعبة قبل كان ممكنا من خلال كتس بما في ذلك الاستفسارات العودية والمتوسطات المتداول. نلقي نظرة على هذا المثال في قاعدة بيانات نموذج AdventureWorks2012: في حين لا النهج الأكثر مباشرة لبناء المتوسط ​​المتداول، وتدير كت لإنجاز هذه المهمة. في هذا الاستعلام، نحن نستخدم كت لإنشاء جدول عمل ثم تنفيذ الانضمام الذاتي. هذا النوع من الشيء هو ممكن باستخدام جدول مؤقت أو متغير الجدول، ولكن كت يحقق ذلك في بيان واحد ويمكن القول، أسهل للقراءة. تعبيرات الجدول المشتركة أيضا إخفاء سر الظلام 8211 ينفذ سكل سيرفر هيئة كت في كل مرة يتم التعبير عن التعبير كت، كت في هذا المثال. وأكثر تعقيدا التعبير الجدول المشترك هو، والمزيد من العمل الذي يتعين القيام به. تشغيل هذا المتوسط ​​المتداول مع إحصائيات إو قيد التشغيل، it8217s من السهل أن نرى عمليات الإعدام متعددة في شكل اثنين من عمليات المسح على كل جدول: على قاعدة بيانات هذا صغيرة، وهذا don8217t تشكل مشاكل الأداء الرئيسية، ولكن هذا سوف يسبب مشاكل كبيرة لحجم متوسط قاعدة البيانات. المتوسطات المتداول مع وظائف النافذة: 2012 وما بعده قدم سكل سيرفر 2012 دعما أفضل لوظائف النافذة. على الرغم من أن دعم أوفر () كان متوفرا بالفعل في سكل سيرفر 2005، سكل سيرفر 2012 يجلب إلى حد كبير المزيد من الوظائف إلى الجدول. باستخدام جملة رو أو رانج من وظيفة النافذة، فإنه يمكن 8217s لتبسيط الاستعلام وتحسين الأداء. نلقي نظرة: على الرغم من أن اثنين من الاستفسارات مختلفة بشكل ملحوظ، وأكبر الفرق هو إدخال روز 12 بريسدينغ. هذا يأخذ مكان الذات الانضمام في المثال السابق. بدلا من كتابة انضمام أنفسنا، ونحن ببساطة نقول سكل سيرفر أن we8217d مثل متوسط ​​ست خلال الصفوف ال 12 الماضية مرتبة حسب السنة والشهر. أي نوع من تأثير هذا على العمل يعمل سكل سيرفر 111 قرأت بدلا من 369 يقرأ. من الواضح أن هذا التغيير يجعل تحسين أداء كبير ل سكل سيرفر. خفضنا W8217ve عدد من يقرأ، والقضاء على بعض التعقيد الاستعلام، وجعلت من الواضح إلى حد ما للمطورين في المستقبل كيف يمكن تعديل أو بناء على هذا المضي قدما. تغيير الاستعلام الجديد إلى المتوسط ​​المتداول حسب اليوم بدلا من الشهر بسيط ويتطلب خطوطا أقل من التعليمات البرمجية: يؤدي هذا رقم الاسم للقراءة المنطقية والفيزيائية كمتوسط ​​التدحرج الشهري باستخدام وظيفة النافذة. تلخيص هناك لديك 8211 طريقتين مختلفتين لأداء متوسط ​​المتداول في سكل سيرفر. ومن الواضح أن طريقة واحدة أسهل بكثير من الأخرى. هناك عدد من التحسينات في سكل سيرفر 2012 لتسهيل عملية إنشاء هذه الوظيفة وتحسين أداء سكل سيرفر في نفس الوقت. شكرا إرميا. أنا الآن فقط في منتصف ترحيل نظام 2008R2 الذي يحسب SMAEMAMACD8217s إلى سكل 2012. وهو يستخدم R28217s وظيفة النافذة أوفر، ولكن لديه لاستخدام رونومبر والقيام قليلا الرياضيات إضافية نظرا لعدم وجود شرط 2012 روز بريسينغ الجديد. أنا أحب الجديد روز بريسينغ والأداء هو الطريق أسرع في عام 2012 مما كان عليه في R2. شكرا لأمثلة You8217re ترحيب شكرا لتقاسم قليلا عن حالة الاستخدام الخاص بك 8211 you8217ve ضرب على تقنية أخرى أن I8217ve المستخدمة مع بعض النجاح المعتدل على سكل سيرفر 2008R2 والإصدارات السابقة: الجمع بين رونومبر مع شبه الانضمام لأداء سومافجيتك. آمل أن تتم عملية الترحيل بسلاسة.

No comments:

Post a Comment