SQL में एकाधिक कॉलम पर अलग-अलग संयोजनों की गणना करें

Sql Mem Ekadhika Kolama Para Alaga Alaga Sanyojanom Ki Ganana Karem



SQL डेटाबेस में काम करते समय, आप ऐसे उदाहरणों का सामना कर सकते हैं जहाँ आपको किसी दी गई तालिका से विशिष्ट मान ढूँढने होंगे और डुप्लिकेट मानों को निकालना होगा। ज्यादातर मामलों में, हम मुख्य रूप से विशिष्ट खंड का उपयोग उस कॉलम को निर्दिष्ट करने के लिए करते हैं जिसके मान वही हैं जो हम अद्वितीय होना चाहते हैं।

लेकिन क्या होता है जब आप यह सुनिश्चित करना चाहते हैं कि एकाधिक कॉलम के मान अद्वितीय हैं और कोई डुप्लीकेट नहीं है?







इस ट्यूटोरियल में, हम सीखेंगे कि दो या दो से अधिक कॉलमों का चयन करने के लिए SQL सुविधाओं का उपयोग कैसे करें और यह सुनिश्चित करें कि उनके मान अलग-अलग हैं।



संकट:

मान लीजिए कि हमारे पास कई कॉलम वाली एक तालिका है और हम इन कॉलमों में मूल्यों के अलग-अलग संयोजनों की संख्या की गणना करना चाहते हैं।



उदाहरण के लिए, ग्राहक_आईडी, उत्पाद_आईडी और दिनांक कॉलम के साथ बिक्री डेटा की तालिका पर विचार करें। हम Customer_id और product_id के अद्वितीय संयोजनों की संख्या गिनना चाहते हैं।





SQL में एकाधिक कॉलम पर अलग-अलग संयोजनों की गणना करें

हम SQL में COUNT DISTINCT क्लॉज और CONCAT फ़ंक्शन का उपयोग करके कई कॉलमों में अलग-अलग संयोजनों की संख्या की गणना कर सकते हैं।

CONCAT फ़ंक्शन हमें दो या दो से अधिक मानों को एक ही मान में जोड़ने की अनुमति देता है जिसका उपयोग हम तुलना और गणना करने के लिए कर सकते हैं।



हम निम्नलिखित सिंटैक्स का उपयोग करके इसे बेहतर ढंग से चित्रित कर सकते हैं:

काउंट चुनें ( अलग CONCAT ( कॉलम 1, कॉलम 2 ) )
टेबल_नाम से;


इस मामले में, कॉलम 1 और कॉलम 2 उन कॉलमों को संदर्भित करते हैं जिन्हें हम गिनती करते समय जोड़ना चाहते हैं और तालिका_नाम लक्ष्य तालिका के नाम को संदर्भित करता है।

आइए एक नमूना तालिका लें:

तालिका बिक्री बनाएँ (
पहचान इंट प्राथमिक कुंजी,
ग्राहक_आईडी आईएनटी,
उत्पाद_आईडी आईएनटी,
तारीख तारीख
) ;

बिक्री मूल्यों में डालें
( 1 , 100 , 1 , '2023-05-01' ) ,
( 2 , 101 , 1 , '2023-05-02' ) ,
( 3 , 100 , 2 , '2023-05-02' ) ,
( 4 , 102 , 3 , '2023-05-03' ) ,
( 5 , 101 , 2 , '2023-05-03' ) ,
( 6 , 103 , 2 , '2023-05-04' ) ,
( 7 , 100 , 3 , '2023-05-04' ) ,
( 8 , 102 , 1 , '2023-05-05' ) ,
( 9 , 101 , 3 , '2023-05-05' ) ,
( 10 , 103 , 1 , '2023-05-06' ) ;


परिणामी तालिका:


पिछली तालिका से Customer_id और product_id कॉलम के अद्वितीय संयोजनों की संख्या निर्धारित करने के लिए, हम निम्नानुसार क्वेरी का उपयोग कर सकते हैं:

काउंट चुनें ( अलग CONCAT ( ग्राहक आईडी, '-' , उत्पाद आयडी ) ) जैसा परिणाम
बिक्री से;


पिछली क्वेरी में, हम अलग-अलग क्लॉज और कॉन्सट फ़ंक्शन का उपयोग करते हैं ताकि ग्राहक_आईडी और उत्पाद_आईडी के मूल्यों को एक हाइफ़न के साथ जोड़ा जा सके। इसे प्रत्येक संयोजन के लिए एक मान बनाना चाहिए जैसा कि निम्नलिखित में दिखाया गया है:


यहां से, हम परिणामी तालिका से अद्वितीय संयोजनों को गिनने के लिए काउंट फ़ंक्शन का उपयोग कर सकते हैं।

निष्कर्ष

हमें उम्मीद है कि इस ट्यूटोरियल ने आपकी मदद की। इस पोस्ट में, आपने पता लगाया है कि अलग-अलग क्लॉज, कॉनकैट () फ़ंक्शन और काउंट क्लॉज को कई SQL टेबल कॉलम से अद्वितीय मानों को निर्धारित करने के लिए कैसे संयोजित किया जाए।