MySQL क्वेरी के साथ कई योग कॉलम चुनने और उन्हें अलग-अलग कॉलम में प्रदर्शित करने के लिए, आपको CASE स्टेटमेंट का उपयोग करना होगा। वाक्य रचना इस प्रकार है:
चुनें (मामला जब आपका कॉलमनाम 1 ='आपका वैल्यू 1' तब आपका कॉलम नाम 2 समाप्त होता है) आपके अलग कॉलम नाम 1 के रूप में, एसयूएम (केस जब आपका कॉलमनाम 1 ='आपका वैल्यू 2' फिर आपका कॉलम नाम 2 END) आपके अलग कॉलमनाम 2 के रूप में, एसयूएम (केस जब आपका कॉलम नाम 1 ='आपका कॉलम वैल्यू 3' नाम अलग करें) तब नाम अलग करें ,... NFROM yourTableName;
उपरोक्त वाक्य रचना को समझने के लिए, आइए एक तालिका बनाते हैं। तालिका बनाने की क्वेरी इस प्रकार है:
mysql> टेबल सेलेक्ट करेंMultipleSumDemo -> (-> Id int NOT NULL AUTO_INCREMENT, -> PlayerName varchar(20), -> PlayerScore int, -> PRIMARY KEY(Id) -> );क्वेरी ओके, 0 पंक्तियाँ प्रभावित ( 0.58 सेकंड)
अब आप इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डाल सकते हैं। क्वेरी इस प्रकार है:
mysql> SelectMultipleSumDemo(PlayerName,PlayerScore) मानों ('Maxwell',89) में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.23 सेकंड) mysql> SelectMultipleSumDemo (PlayerName, PlayerScore) मानों ('रिकी', 98) में डालें;क्वेरी ओके, 1 पंक्ति प्रभावित (0.15 सेकंड) mysql> सेलेक्ट मल्टीपलसमडेमो (प्लेयरनाम, प्लेयरस्कोर) मान ('मैक्सवेल', 96) में डालें; क्वेरी ओके, 1 पंक्ति प्रभावित (0.18 सेकंड) mysql> सेलेक्ट मल्टीपलसमडेमो (प्लेयरनाम, प्लेयरस्कोर) में डालें मान ('रिकी', 78); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.16 सेकंड) mysql> चुनिंदा मल्टीपलसमडेमो (प्लेयरनाम, प्लेयरस्कोर) मान ('मैक्सवेल', 51) में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.17 सेकंड) mysql> SelectMultipleSumDemo(PlayerName,PlayerScore) मानों ('रिकी', 89) में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.21 सेकंड) mysql> चुनिंदा मल्टीपलसमडेमो (प्लेयरनाम, प्लेयरस्कोर) मान ('डेविड', 56) में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.15 सेकंड)mysql> SelectMultipleSumDemo(PlayerName,PlayerScore) मानों ('डेविड', 65) में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.19 सेकंड)
चयन कथन का उपयोग करके तालिका से सभी रिकॉर्ड प्रदर्शित करें। क्वेरी इस प्रकार है:
mysql> selectMultipleSumDemo से *चुनें;
निम्न आउटपुट है:
+-----+---------------+---------------+| आईडी | खिलाड़ी का नाम | प्लेयरस्कोर |+-----+---------------+-------------+| 1 | मैक्सवेल | 89 || 2 | रिकी | 98 || 3 | मैक्सवेल | 96 || 4 | रिकी | 78 || 5 | मैक्सवेल | 51 || 6 | रिकी | 89 || 7 | डेविड | 56 || 8 | डेविड | 65 |+----+------------+------------+8 पंक्तियों में सेट (0.00 सेकंड)
एकाधिक योग के साथ एक अलग कॉलम प्राप्त करने की क्वेरी:
mysql> चुनें -> एसयूएम (केस जब प्लेयरनाम ='मैक्सवेल' तब प्लेयरस्कोर समाप्त होता है) 'मैक्सवेल कुल स्कोर' के रूप में, -> एसयूएम (केस जब प्लेयरनाम ='रिकी' तब प्लेयरस्कोर समाप्त होता है) 'रिकी टोटल स्कोर' के रूप में, -> एसयूएम (केस जब प्लेयरनाम ='डेविड' तब प्लेयरस्कोर समाप्त होता है) 'डेविड कुल स्कोर' के रूप में -> सेलेक्ट मल्टीपलसमडेमो से;
निम्न आउटपुट है:
<पूर्व>+---------------------+-------------------+---- ---------------+| मैक्सवेल कुल स्कोर | रिकी कुल स्कोर | डेविड कुल स्कोर |+---------------------+---------------------+--- ----------------+| 236 | 265 | 121 |+---------------------+---------------------+----- --------------+1 पंक्ति सेट में (0.00 सेकंड)