Wednesday 31 January 2018

स्थानांतरण - औसत - एसक्यूएल


टी-एसक्यूएल में एक्सपेंनेलीली मूविंग एवरेज। एक्सपेंनेशन मूविंग एवरेज भारित मूविंग एवरेज के समान हैं, जो कि वे बहुत पहले बदलावों के लिए कम वजन देते हैं, और हाल के परिवर्तनों के लिए अधिक वजन भारित चलती औसत रैखिक हैं, लेकिन घातीय चलती औसत घातीय हैं वजन को वक्र के रूप में व्यक्त किया जा सकता है। टी-एसक्यूएल में घातीय बढ़ते औसत की गणना करने के लिए एक अनग्रेडेड फीचर के बारे में वैरिएबल और एसक्यूएल सर्वर में कुल योग चलाने का एक शानदार तरीका है इस ब्लॉग पोस्ट में मैं दिखाऊंगा कि कैसे इस पद्धति का उपयोग घातीय चलती औसत टी-एसक्यूएल में है, लेकिन मैं एक पद्धति भी पेश करूंगा जो SQL सर्वर में मानक सुविधाओं का उपयोग कर रहा है दुर्भाग्य से, इसका मतलब है कि एक लूप का उपयोग करना। उदाहरणों में मैं 9 दिन का घातीय चलती औसत गणना करता हूँ उदाहरण के लिए डेटाबेस TAdb A स्क्रिप्ट का प्रयोग टीएडीबी को यहां पाया जा सकता है। एक्सपेन्नेएशन मूविंग एएएमए रनिंग कॉटल मेथोड। अद्यतनों में चल रहे कुल सुविधाओं के पीछे के सिद्धांत को जेफ मोडेन द्वारा अपने आर्टिकल में विस्तार में वर्णित किया गया है ई रनिंग कुल और ऑर्डिनल रैंक की समस्याओं को हल करना। अन्य संसाधन जो एएमए की गणना करने के लिए इस पद्धति का उपयोग करने का वर्णन करते हैं, ब्लॉग पोस्ट हैं, गैब्रियल प्रीस्टर द्वारा टी-एसक्यूएल के साथ चलती औसत की गणना और एसक्यूएल सर्वर सेंट्रल पर फोम पोस्ट घातीय मूविंग औसत चुनौती दोनों। टी-एसक्यूएल में आप एक अद्यतन कथन में वेरिएबल्स के साथ-साथ कॉलम अपडेट कर सकते हैं अद्यतनों को पंक्ति द्वारा पंक्तिबद्ध रूप से एसक्यूएल सर्वर द्वारा किया जाता है पंक्ति व्यवहार से यह पंक्ति वही चलती कुल संभव गणना करता है। यह उदाहरण दिखाता है कि यह कैसे कार्य करता है। ColumnRunningTotal कॉलमटोसम का चलना कुल है। इस पद्धति का उपयोग करके हम इस टी-एसक्यूएल के साथ ईएमए 9 की गणना कर सकते हैं। ईएमए की गणना सरल है हम वर्तमान पंक्ति और पिछले का उपयोग करते हैं, लेकिन वर्तमान पंक्ति में अधिक वजन के साथ वजन की गणना की जाती है फॉर्मूला 2 1 9, जहां 9 एएमए की लंबाई के लिए पैरामीटर है, ऊपर पंक्ति 10 के लिए ईएमए 9 की गणना करने के लिए, गणना है। इस मामले में वर्तमान पंक्ति में 20 वजन 2 1 9 2 और प्रीओओ हमें पंक्ति में वजन 80 से 1 1 9 0 8 मिलता है। आप मामले की कथन में ऊपर दिए गए कथन में यह गणना पाते हैं। एक्सपेनेंशियल मूविंग औसत ईएमए लूपिंग पद्धति। जहाँ तक मुझे पता है, उपर्युक्त चलने वाली कुल विधि को छोड़कर, एक निर्धारित एसक्यूएल स्टेटमेंट का उपयोग करके ईएमए की गणना करने का कोई तरीका नहीं है, इसलिए, नीचे टी-एसक्यूएल, ईएमए 9 की गणना करने के लिए थोड़ी देर लूप का उपयोग कर रहा है। परिणाम समान उपर्युक्त उदाहरण के समान हैं। अपेक्षित रूप में, सेट आधारित चालू कुल संस्करण लूप संस्करण की तुलना में अधिक तेज़ है मेरी मशीन पर सेट आधारित समाधान लगभग 300 एमएस था, लूप संस्करण के साथ लगभग 1200 की तुलना में लूप संस्करण एसक्यूएल मानकों के अनुरूप है, लेकिन हालांकि तरीकों के बीच का चुनाव सबसे महत्वपूर्ण बातों पर निर्भर करता है आपके लिए, प्रदर्शन या मानकों। चलने वाली औसत, सरल मूविंग औसत एसएमए और वेटेड मूविंग औसत डब्लूएमए के साथ-साथ प्रवृत्ति विश्लेषण में घातीय चलती औसत का उपयोग किया जा सकता है। तकनीकी विश्लेषण में भी अन्य गणनाएं हैं जो हमें ईएमए, एमएसीडी उदाहरण के लिए। इस ब्लॉग पोस्ट में तकनीकी विश्लेषण, टीए, एसक्यूएल सर्वर के बारे में एक सीरी का हिस्सा है यहां अन्य पोस्ट देखें। टॉमस लिंड द्वारा पोस्ट किया गया। टॉमस लिंड - एसक्यूएल सर्वर डीबीए और डाटाबेस डेवलपर के रूप में उच्च पर परामर्श सेवाएं कोस्ट डाटाबेस सॉल्यूशंस एबी। पहले हमने चर्चा की है कि पोस्टग्रेज़ में रोलिंग औसत कैसे लिखें लोकप्रिय मांग के द्वारा हम आपको बता रहे हैं कि यह कैसे MySQL और SQL Server में करना है। हम इस तरह शोर चार्ट का विवरण कैसे कवर करेंगे। 7-दिवसीय पूर्ववर्ती इस तरह की औसत रेखा। बिग आइडिया। ऊपर हमारा पहला ग्राफ़ बहुत शोर और मुश्किल से उपयोगी जानकारी पाने के लिए हम इसे 7 दिनों के अन्दर के डेटा के ऊपर औसत बनाए रखने के द्वारा इसे चिकना कर सकते हैं यह विंडो फ़ंक्शंस के साथ किया जा सकता है - जंम, या सहसंबद्ध subqueries - हम पहले दो को कवर करेंगे। हम एक पूर्ववर्ती औसत से शुरू करेंगे, जिसका मतलब है कि 7 वें दिन का औसत बिंदु पहले सात दिनों का औसत होता है। आमतौर पर यह स्पाइक में बदलाव करता है ग्राफ़ को दाईं तरफ, एक बड़ी स्पाइक के रूप में एक औसत है निम्नलिखित सात दिनों में एड करें। सबसे पहले, एक इंटरमीडिएट गणना तालिका बनाएँ। हम हर दिन के लिए कुल साइनअप पर औसतन गणना करना चाहते हैं मान लें कि हमारे पास एक नया उपयोगकर्ता प्रति पंक्ति और एक टाइमस्टैम्प बनियाट के साथ एक विशिष्ट उपयोगकर्ता तालिका है, हम जैसे हमारे साइनअप टेबल की तरह। Postgres और SQL सर्वर में आप इसे एक MySQL में सीटीई के रूप में उपयोग कर सकते हैं, आप इसे एक अस्थायी तालिका के रूप में सहेज सकते हैं। पोस्टग्रेड्स रोलिंग औसत। ठीक से पोस्टग्रेड्स में खिड़की के कार्य हैं जो चल रहे औसत की गणना करने का सबसे आसान तरीका है। यह क्वेरी मानता है कि तिथियों के अंतराल नहीं हैं क्वेरी पिछले सात पंक्तियों से औसत होती है, न कि पिछले सात तिथियां हैं यदि आपके डेटा में अंतराल है, उन्हें जनरेटरीज के साथ भरें या घने दिनांक पंक्तियों के साथ तालिका के साथ जुड़ें। MySQL रोलिंग औसत। MySQL में विंडो फ़ंक्शन का अभाव है, लेकिन हम स्वयं-जुड़ने का उपयोग करते हुए एक समान गणना कर सकते हैं। हमारी गिनती तालिका में प्रत्येक पंक्ति के लिए, हम पिछले सात दिनों के भीतर हर पंक्ति में शामिल होते हैं और औसत लेते हैं। यह क्वेरी स्वत: ही दिनांक अंतराल को संभालती है, क्योंकि हम पूर्ववर्ती एन पंक्तियों के बजाय किसी दिनांक सीमा के भीतर पंक्तियों को देख रहे हैं। SQL सर्वर रोलिंग औसत। SQL सर्वर की खिड़की कार्य है, इसलिए रोलिंग औसत की गणना करना या तो Postgres शैली या MySQL शैली में सरलता के लिए किया जा सकता है, हम MySQL का उपयोग कर रहे हैं संस्करण स्वयं के साथ जुड़ते हैं। यह संकल्पनात्मक रूप से एक ही है MySQL के रूप में केवल अनुवाद की तारीख का कार्य है और कॉलम द्वारा स्पष्ट रूप से नामित समूह है। अन्य औसत। हम इस पोस्ट में 7-दिन के पीछे औसत पर ध्यान केंद्रित करते हैं अगर हम इसे देखना चाहते हैं 7 दिवसीय अग्रणी औसत, यह अन्य दिशाओं की तारीखों को छांटने के लिए उतना आसान नहीं है यदि हम एक केन्द्रित औसत पर देखना चाहते हैं, तो हम उपयोग करेंगे। 3 पूर्ववर्ती और 3 के बीच के दायरे के लिए दाएं स्थान। MySQL के बीच - 3 और 3 के बीच MySQL। SQL सर्वर 2008 R2 के बीच SQL सर्वर 2008 R2 के साथ काम कर रहा हूँ, चलती औसत की गणना करने की कोशिश कर रहा हूँ, मेरे दृश्य में प्रत्येक अभिलेख के लिए, मैं 250 पिछले अभिलेखों के मूल्यों को इकट्ठा करना चाहूंगा, और फिर इस चयन के लिए औसत की गणना करें। मेरा देखने के कॉलम निम्नानुसार हैं। TransactionID अद्वितीय है प्रत्येक TransactionID के लिए मैं पिछले 250 रिकॉर्डों से अधिक, कॉलम मूल्य के लिए औसत की गणना करना चाहता हूं। इसलिए TransactionID 300 के लिए, पिछले 250 पंक्तियों के दृश्य से सभी मान एकत्रित करें TransactionID द्वारा अवरोही क्रमबद्ध है और फिर कॉलम MovAvg में इन मूल्यों के औसत के परिणाम लिखिए, मैं रिकॉर्ड की एक सीमा के भीतर डेटा एकत्र करने के लिए देख रहा हूं। अक्टूबर 28 14 से 20 58

No comments:

Post a Comment