एसक्यूएल प्रतिशत

Esakyu Ela Pratisata



वे कौन से दो सामान्य शब्द हैं जो इतने निकट से संबंधित हैं कि आप सोचेंगे कि वे एक ही हैं? हम डेटाबेस डेवलपर्स के लिए, यह SQL डेटाबेस और आँकड़े होंगे।

डेटाबेस प्रशासन में भी सामने आने वाली सामान्य सांख्यिकीय गणनाओं में से एक प्रतिशतक है।

प्रतिशतक एक सांख्यिकीय माप है जो हमें डेटासेट को खंडों के बराबर भागों में विभाजित करने की अनुमति देता है। प्रतिशतक की भूमिका डेटा वितरण में एक अंतर्दृष्टि प्रदान करना है, जिससे हम समझते हैं कि मूल्य कैसे फैले हुए हैं।







इस ट्यूटोरियल में, हम सीखेंगे कि हम डेटा को विभिन्न खंडों में विभाजित करने के लिए SQL में प्रतिशतक की गणना कैसे कर सकते हैं।



नमूना तालिका

आइए एक बुनियादी तालिका स्थापित करके शुरुआत करें जिसमें प्रदर्शन उद्देश्यों के लिए एक नमूना डेटा शामिल है। इससे हमें यह समझाने में मदद मिलती है कि प्रतिशत की गणना करने के विभिन्न तरीके कैसे व्यवहार करते हैं और परिणामी आउटपुट कैसे होता है।



आइए हम 'उत्पाद' नामक एक तालिका बनाएं जिसमें किराने की जानकारी शामिल हो। 'तालिका बनाएं' खंड इस प्रकार है:





टेबल उत्पाद बनाएं (

product_id INT प्राथमिक कुंजी AUTO_INCREMENT,

उत्पाद_नाम VARCHAR( 255 ),

श्रेणी वर्चर( 255 ),

मूल्य दशमलव( 10 , 2 ),

मात्रा INT,

समाप्ति तिथि दिनांक,

बारकोड BIGINT

);

एक बार जब हमने तालिका बना ली, तो हम आगे बढ़ सकते हैं और नमूना डेटा को तालिका में जोड़ सकते हैं। हम निम्नलिखित 'सम्मिलित करें' कथनों का उपयोग कर सकते हैं:

डालना
में
उत्पाद (उत्पाद_नाम,
वर्ग,
कीमत,
मात्रा,
समाप्ति तिथि,
बारकोड)
मान ( 'शेफ हैट 25 सेमी' ,
'बेकरी' ,
24.67 ,
57 ,
'2023-09-09' ,
2854509564204 );

डालना
में
उत्पाद (उत्पाद_नाम,
वर्ग,
कीमत,
मात्रा,
समाप्ति तिथि,
बारकोड)
मान ( 'बटेर अंडे - डिब्बाबंद' ,
'पेंट्री' ,
17.99 ,
67 ,
'2023-09-29' ,
1708039594250 );

डालना
में
उत्पाद (उत्पाद_नाम,
वर्ग,
कीमत,
मात्रा,
समाप्ति तिथि,
बारकोड)
मान ( 'कॉफ़ी - एग नॉग कैपुचिनो' ,
'बेकरी' ,
92.53 ,
10 ,
'2023-09-22' ,
8704051853058 );

डालना
में
उत्पाद (उत्पाद_नाम,
वर्ग,
कीमत,
मात्रा,
समाप्ति तिथि,
बारकोड)
मान ( 'नाशपाती - कांटेदार' ,
'बेकरी' ,
65.29 ,
48 ,
'2023-08-23' ,
5174927442238 );

डालना
में
उत्पाद (उत्पाद_नाम,
वर्ग,
कीमत,
मात्रा,
समाप्ति तिथि,
बारकोड)
मान ( 'पास्ता - एंजेल हेयर' ,
'पेंट्री' ,
48.38 ,
59 ,
'2023-08-05' ,
8008123704782 );

डालना
में
उत्पाद (उत्पाद_नाम,
वर्ग,
कीमत,
मात्रा,
समाप्ति तिथि,
बारकोड)
मान ( 'वाइन - प्रोसेको वाल्डोबियाडीन' ,
'उत्पादन करना' ,
44.18 ,
3 ,
'2023-03-13' ,
6470981735653 );

अंत में, आपके पास इस प्रकार एक तालिका होनी चाहिए:



एसक्यूएल प्रतिशत

जैसा कि आप अनुमान लगा सकते हैं, डेटाबेस इंजन के आधार पर प्रतिशत की गणना करने का तरीका भिन्न हो सकता है। हालाँकि, सबसे आम तरीका PERCENTILE_DISC() और PERCENTILE_CONT() फ़ंक्शंस का उपयोग करना है।

ये फ़ंक्शन मानक SQL विनिर्देश (2003) का हिस्सा हैं। इसलिए, यह PostgreSQL और Oracle द्वारा समर्थित होने के लिए बाध्य है।

PERCENTILE_CONT()

आइए PERCENTILE_CONT() फ़ंक्शन से शुरुआत करें। यह फ़ंक्शन हमें डेटासेट के एक अंश के रूप में प्रतिशत मानों की गणना करने की अनुमति देता है।

फ़ंक्शन एक प्रक्षेपित मान लौटाता है जो आपके डेटासेट में विशिष्ट डेटा बिंदु के लिए सटीक नहीं हो सकता है।

फ़ंक्शन सिंटैक्स इस प्रकार है:

PERCENTILE_CONT(प्रतिशतक) भीतर समूह ( आदेश कॉलम_नाम द्वारा) ओवर ();

फ़ंक्शन निम्नलिखित पैरामीटर स्वीकार करता है:

  • परसेंटाइल - यह वांछित परसेंटाइल मान (0.0 से 1.0) निर्दिष्ट करता है।
  • column_name - यह उस कॉलम को दर्शाता है जिसके लिए हम प्रतिशतक की गणना करना चाहते हैं।
  • ओवर () - यह संपूर्ण डेटासेट को निर्दिष्ट करने के लिए विंडो फ़ंक्शन सेट करता है।

इस फ़ंक्शन का उपयोग कैसे करें इसका एक उदाहरण इस प्रकार है:

चुनना

PERCENTILE_CONT( 0.5 ) अंदर समूह ( आदेश मूल्य के अनुसार) औसत से अधिक ()।

से

उत्पाद;

नोट: दी गई क्वेरी केवल PostgreSQL में काम करती है क्योंकि MySQL ग्रुप के भीतर के उपयोग का समर्थन नहीं करता है।

यह 50 की गणना करता है वां प्रदान किए गए डेटा का प्रतिशत।

PERCENTILE_DISC()

हम सीधे डेटासेट से अलग मान के रूप में प्रतिशत मान की गणना करने के लिए PERCENTILE_DISC() फ़ंक्शन का उपयोग कर सकते हैं।

फ़ंक्शन एक मान लौटाता है जो वास्तविक डेटा बिंदु से मेल खाता है।

फ़ंक्शन सिंटैक्स इस प्रकार है (PostgreSQL):

PERCENTILE_DISC(प्रतिशतक) भीतर समूह ( आदेश कॉलम_नाम द्वारा) ओवर ();

एक उदाहरण आउटपुट इस प्रकार है:

चुनना

PERCENTILE_DISC( 0.25 ) अंदर समूह ( आदेश मूल्य के अनुसार) ओवर () एएस प्रतिशतक_25

से

उत्पाद;

इसे 25 की गणना करनी चाहिए वां डेटा का प्रतिशत.

निष्कर्ष

इस ट्यूटोरियल में बताया गया है कि SQL डेटाबेस में प्रतिशत की गणना करने के लिए विभिन्न फ़ंक्शंस का उपयोग कैसे करें।