MySQL कार्य: पङ्क्तिहरू, भिन्न मानहरू कसरी गणना गर्ने, र सर्तहरू लागू गर्ने

目次

१. MySQL COUNT फङ्क्सनको अवलोकन

MySQL मा COUNT फङ्क्सन निर्दिष्ट स्तम्भ वा अवस्थासँग मेल खाने पङ्क्तिहरूको संख्यालाई प्राप्त गर्नका लागि एक धेरै उपयोगी उपकरण हो। यस फङ्क्सन प्रयोग गरेर, तपाईं आफ्नो डाटाबेसमा रेकर्डहरूको गणना सजिलै गर्न सक्नुहुन्छ। उदाहरणका लागि, तपाईं एक तालिकामा सबै पङ्क्तिहरूको गणना गर्न सक्नुहुन्छ वा विशिष्ट अवस्थाहरूमा आधारित रेकर्डहरूको संख्यालाई गणना गर्न सक्नुहुन्छ।

COUNT() फङ्क्सनको आधारभूत वाक्यरचना

COUNT फङ्क्सनको आधारभूत प्रयोग निम्नानुसार छ:

SELECT COUNT(*) FROM table_name;

यो क्वेरीले निर्दिष्ट तालिकामा सबै पङ्क्तिहरूको गणना गर्दछ। यदि तपाईं एक विशिष्ट स्तम्भमा मानहरूको संख्यालाई गणना गर्न चाहनुहुन्छ भने, तपाईं लेख्न सक्नुहुन्छ:

SELECT COUNT(column_name) FROM table_name;

यस अवस्थामा, निर्दिष्ट स्तम्भमा कुनै पनि NULL मानहरूलाई बेवास्ता गरिन्छ र गणनामा समावेश गरिँदैन।

उदाहरण: NULL मानहरूलाई बेवास्ता गर्ने

उदाहरणका लागि, यदि प्रयोगकर्ता उमेरहरू स्टोर गर्ने age स्तम्भमा NULL मानहरू छन् भने, तपाईं निम्न क्वेरी प्रयोग गरेर तिनीहरूलाई बहिष्कार गर्न सक्नुहुन्छ:

SELECT COUNT(age) FROM users WHERE age IS NOT NULL;

यो क्वेरीले NULL नभएका age मानहरूको मात्र गणना गर्दछ।

२. COUNT लाई DISTINCT सँग जोड्ने

डाटाबेसहरूमा डुप्लिकेट मानहरू स्टोर गर्न सामान्य छ। यस्ता अवस्थाहरूमा, तपाईं DISTINCT लाई COUNT फङ्क्सनसँग जोडेर अद्वितीय मानहरूको संख्यालाई फर्काउन सक्नुहुन्छ। DISTINCT किवर्डले गणना गर्नुअघि डुप्लिकेटहरूलाई हटाउँछ।

COUNT लाई DISTINCT सँग प्रयोग गर्ने उदाहरण

निम्न क्वेरीले name स्तम्भमा अद्वितीय नामहरूको संख्यालाई गणना गर्दछ:

SELECT COUNT(DISTINCT name) FROM users;

उदाहरणका लागि, यदि users तालिकामा “taro” नामका धेरै पङ्क्तिहरू छन् भने पनि, यो एक पटक मात्र गणना गरिनेछ।

३. WHERE प्रयोग गरेर अवस्थासँग गणना गर्ने

COUNT फङ्क्सनलाई WHERE क्लजसँग जोडेर विशिष्ट अवस्थाहरू पूरा गर्ने पङ्क्तिहरूको मात्र गणना गर्न सकिन्छ। यो विशेष गरी तब उपयोगी हुन्छ जब तपाईं निश्चित मापदण्डहरूसँग मेल खाने डाटा प्राप्त गर्न चाहनुहुन्छ।

उदाहरण: अवस्थात्मक गणना

निम्न क्वेरीले २५ वर्ष वा सोभन्दा माथिका प्रयोगकर्ताहरूको संख्यालाई गणना गर्दछ:

SELECT COUNT(*) FROM users WHERE age >= 25;

यो क्वेरीले users तालिकामा age स्तम्भ २५ वा सोभन्दा ठूलो भएको पङ्क्तिहरूको संख्यालाई फर्काउँछ।

COUNT फङ्क्सनको उन्नत उदाहरण

तपाईं धेरै अवस्थाहरू प्रयोग गरेर पनि गणना गर्न सक्नुहुन्छ। उदाहरणका लागि, २५ वर्ष वा सोभन्दा माथिका पुरुष प्रयोगकर्ताहरूको गणना गर्नका लागि, तपाईं लेख्न सक्नुहुन्छ:

SELECT COUNT(*) FROM users WHERE age >= 25 AND gender = 'Male';

यो क्वेरीले दुवै निर्दिष्ट अवस्थाहरू पूरा गर्ने पङ्क्तिहरूको गणना गर्दछ।

४. GROUP BY सँग डाटा समूहित गर्दै र गणना गर्ने

GROUP BY क्लजले तपाईंलाई एक विशिष्ट क्षेत्र अनुसार डाटालाई समूहित गर्न अनुमति दिन्छ र त्यसपछि प्रत्येक समूहभित्र पङ्क्तिहरूको गणना गर्दछ। यो उदाहरणका लागि विभाग अनुसार कर्मचारीहरूको गणना गर्दा धेरै उपयोगी हुन्छ।

GROUP BY लाई COUNT सँग प्रयोग गर्ने उदाहरण

निम्न क्वेरीले प्रत्येक विभागमा कर्मचारीहरूको संख्यालाई गणना गर्दछ:

SELECT department, COUNT(*) FROM employees GROUP BY department;

यो क्वेरीले विभाग अनुसार कर्मचारीहरूको गणनालाई फर्काउँछ। GROUP BY क्लजले department स्तम्भ अनुसार पङ्क्तिहरूलाई समूहित गर्दछ र प्रत्येक समूहमा पङ्क्तिहरूको गणना गर्दछ।

५. IF स्टेटमेन्टहरूसँग अवस्थात्मक गणना

COUNT फङ्क्सनलाई IF स्टेटमेन्टहरूसँग प्रयोग गरेर थप उन्नत अवस्थाहरू सेट गर्न सकिन्छ। उदाहरणका लागि, यदि तपाईं अवस्थामा आधारित फरक गणना नियमहरू लागू गर्न चाहनुहुन्छ भने, तपाईं IF ले तर्कलाई नियन्त्रण गर्न सक्नुहुन्छ।

उदाहरण: IF सँग गणना गर्ने

निम्न क्वेरीले ५०,००० भन्दा बढी तलब भएका कर्मचारीहरूको संख्यालाई गणना गर्दछ:

SELECT COUNT(IF(salary > 50000, 1, NULL)) FROM employees;

यो क्वेरीले salary ५०,००० भन्दा बढी भएको पङ्क्तिहरूको मात्र गणना गर्दछ। IF स्टेटमेन्टले अवस्था पूरा भएमा १ फर्काउँछ र अन्यथा NULL फर्काउँछ, जसलाई COUNT ले बेवास्ता गर्दछ।

६. COUNT फङ्क्सनका व्यावहारिक प्रयोगका अवस्थाहरू

COUNT फङ्क्सन दैनिक डाटाबेस व्यवस्थापनमा व्यापक रूपमा प्रयोग गरिन्छ। उदाहरणका लागि, यो दर्ता भएका प्रयोगकर्ताहरूको संख्यालाई गणना गरेर वा बिक्री लेनदेनहरूको संख्यालाई गणना गरेर डाटा अखण्डता कायम राख्न मद्दत गर्दछ।

प्रयोग अवस्था १: दर्ता भएका प्रयोगकर्ताहरूको गणना

वेबसाइट प्रशासकहरूलाई प्रायः कति प्रयोगकर्ताहरू दर्ता भएका छन् भन्ने थाहा हुन आवश्यक हुन्छ। तपाईं निम्न क्वेरी प्रयोग गर्न सक्नुहुन्छ:

SELECT COUNT(*) FROM users;

यो क्वेरी users तालिकामा सबै पङ्क्तिहरू गणना गर्दछ र दर्ता भएका प्रयोगकर्ताहरूको कुल संख्या फर्काउँछ।

प्रयोग मामला २: बिक्री डाटा गणना

बिक्री डाटा व्यवस्थापन गर्न, तपाईंलाई कुनै विशेष उत्पादन कति पटक बेचिएको छ भन्ने थाहा हुन सक्छ। निम्न क्वेरी प्रयोग गर्न सकिन्छ:

SELECT COUNT(*) FROM sales WHERE product_id = 123;

यो क्वेरी product_id १२३ भएको बिक्री रेकर्डहरू गणना गर्दछ।

७. COUNT सँग सामान्य समस्याहरूको समस्या निवारण

COUNT फङ्क्शन प्रयोग गर्दा, NULL मानहरू वा डुप्लिकेट डाटासँग सम्बन्धित समस्याहरू उत्पन्न हुन सक्छन्। यी अवस्थाहरू कसरी ह्यान्डल गर्ने थाहा हुनु त्रुटिहरूबाट बच्न र सही परिणामहरू सुनिश्चित गर्न महत्वपूर्ण छ।

NULL डाटासँग सम्बन्धित समस्याहरू र समाधानहरू

COUNT(column_name) प्रयोग गर्दा, NULL मानहरू गणना गरिँदैनन्। यदि तपाईं NULL मानहरू समावेश गरेर सबै पङ्क्तिहरू गणना गर्न चाहनुहुन्छ भने, COUNT(*) प्रयोग गर्न सिफारिस गरिन्छ। कुनै कलममा केवल non-NULL मानहरू गणना गर्न, IS NOT NULL अवस्थालाई थप्नुहोस्:

SELECT COUNT(column_name) FROM table_name WHERE column_name IS NOT NULL;