Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> MySql

योग यदि सभी पंक्तियाँ अशक्त नहीं हैं तो MySQL में अशक्त लौटें?

<घंटा/>

आप इसे GROUP BY HAVING क्लॉज की मदद से हासिल कर सकते हैं। वाक्य रचना इस प्रकार है -

अपना कॉलमनाम1 चुनें, एसयूएम(आपका कौमनाम2) अपने कॉलमनाम समूह से अपने कॉलमनाम1हैविंग COUNT(yourCoumnName2) =COUNT(*);

उपरोक्त वाक्य रचना को समझने के लिए, आइए एक तालिका बनाते हैं। तालिका बनाने की क्वेरी इस प्रकार है -

mysql> तालिका बनाएं SumDemo -> ( -> Id int, -> Amount int -> );क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.58 सेकंड)

इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें। क्वेरी इस प्रकार है -

mysql> SumDemo मानों (1,200) में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.22 सेकंड) mysql> SumDemo मानों में डालें (2,100); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.19 सेकंड) mysql> SumDemo मानों में डालें ( 2,NULL);क्वेरी ओके, 1 पंक्ति प्रभावित (0.14 सेकंड)mysql> SumDemo मानों (1,300) में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.16 सेकंड) mysql> SumDemo मानों (2,100) में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.17 सेकंड)mysql> SumDemo मानों में सम्मिलित करें(1,500);क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.16 सेकंड)

चयन कथन का उपयोग करके तालिका से सभी रिकॉर्ड प्रदर्शित करें। क्वेरी इस प्रकार है -

mysql> SumDemo से *चुनें;

आउटपुट

<पूर्व>+----------+----------+| आईडी | राशि |+----------+----------+| 1 | 200 || 2 | 100 || 2 | शून्य || 1 | 300 || 2 | 100 || 1 | 500 |+----------+----------+6 पंक्तियाँ सेट में (0.00 सेकंड)

यहां योग प्राप्त करने की क्वेरी है यदि सभी पंक्तियां शून्य नहीं हैं और शून्य वापस आती हैं। क्वेरी इस प्रकार है -

mysql> Id चुनें, -> SUM(राशि) -> SumDemo से -> GROUP BY ID -> HAVING COUNT(Amount) =COUNT(*);

निम्नलिखित आउटपुट है। चूँकि id 2 NULL है, इसका कोई भी मान योग में नहीं जोड़ा जाएगा।

इसलिए, Id 1 के सभी मानों को जोड़ा जाएगा अर्थात 200 + 300 + 500 =1000 जैसा कि नीचे दिखाया गया है -

<पूर्व>+----------+---------------+| आईडी | एसयूएम(राशि) |+------+---------------+| 1 | 1000 |+------+---------------+1 पंक्ति में सेट (0.09 सेकंड)
  1. पंक्तियों के मूल्यों को समेटने और परिणाम को क्रमबद्ध करने के लिए MySQL क्वेरी?

    इसके लिए आप ORDER BY क्लॉज के साथ GROUP BY का इस्तेमाल कर सकते हैं। आइए पहले एक टेबल बनाएं - );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.46 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - DemoTable1499 मानों में डालें (बॉब, 58); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.11 सेकंड) चयन कथन का उ

  1. कॉलम A को अपडेट करें यदि शून्य है, अन्यथा कॉलम B को अपडेट करें, अन्यथा यदि दोनों कॉलम शून्य नहीं हैं तो MySQL के साथ कुछ भी न करें

    इसके लिए IS NULL प्रॉपर्टी के साथ IF() का इस्तेमाल करें। आइए पहले एक टेबल बनाएं - टेबल बनाएं DemoTable1976 ( FirstName varchar(20), LastName varchar(20) );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.00 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - DemoTable1976 मानों में डालें (क्रिस, ब्

  1. MySQL क्वेरी सकारात्मक मान वाली पंक्तियों के लिए TRUE लौटाने के लिए?

    धनात्मक मानों के लिए TRUE और ऋणात्मक के लिए FALSE लौटाने के लिए, MySQL IF() का उपयोग करें। आइए पहले एक टेबल बनाएं - mysql> create table DemoTable2038    -> (    -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,    -> Value int    -> ); Query OK, 0