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

MySQL क्वेरी परिणाम में कॉलम मानों को कॉलम नामों के रूप में सेट करना?

<घंटा/>

क्वेरी परिणाम में स्तंभ मानों को स्तंभ नामों के रूप में सेट करने के लिए, आपको एक CASE कथन का उपयोग करने की आवश्यकता है।

वाक्य रचना इस प्रकार है -

 अपना आईडी कॉलमनाम चुनें, अधिकतम (मामला जब (आपका कॉलमनाम 1 ='आपका वैल्यू 1') तब आपका कॉलम नाम 2 अन्य न्यूलेंड) 'yourValue1' के रूप में, अधिकतम (मामला जब (आपका कॉलमनाम 1 ='आपका वैल्यू 2') तब आपका कॉलमनाम 2 अन्य न्यूलेंड) 'yourValue2' के रूप में, अधिकतम ( मामला जब yourColumnName1='yourValue3') तब yourColumnName2 और NULLend) 'yourValue3' के रूप में,..Nfrom valueAsColumngroup by yourIdColumnNameआदेश आपकेIdColumnName द्वारा;

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

mysql> तालिका valueAsColumn बनाएं -> ( -> UserId int, -> UserColumn1 varchar(10), -> UserColumn2 varchar(10) -> );क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.75 सेकंड)

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

mysql> valueAsColumn मानों में डालें (0, 'जॉन', 'A+'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.18 सेकंड) mysql> valueAsColumn मानों में डालें (0, 'कैरोल', 'बी'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.17 सेकंड) mysql> valueAsColumn मानों में डालें (0, 'सैम', 'सी'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.17 सेकंड) mysql> valueAsColumn मानों में डालें (1, 'जॉन', 'डी'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.20 सेकंड) mysql> valueAsColumn मानों में डालें (1, 'कैरोल', 'ए'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.20 सेकंड) mysql> valueAsColumn मानों में डालें ( 1,'कैरोल','सी');क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.15 सेकंड)

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

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

निम्न आउटपुट है -

<पूर्व>+----------+----------------+---------------+| उपयोगकर्ता आईडी | UserColumn1 | UserColumn2 |+-----------+-------------+---------------+| 0 | जॉन | ए+ || 0 | कैरल | बी || 0 | सैम | सी || 1 | जॉन | डी || 1 | कैरल | ए || 1 | कैरल | सी |+-----------+-------------+---------------+6 पंक्तियों में सेट (0.00 सेकंड)

स्तंभ मान को स्तंभ नामों के रूप में सेट करने की क्वेरी यहां दी गई है -

mysql> UserId चुनें, -> मैक्स (केस जब (UserColumn1='John') तब UserColumn2 और NULL end) 'जॉन' के रूप में -> मैक्स (केस जब (UserColumn1='Carol') तब UserColumn2 और NULL end ) 'कैरोल' के रूप में, -> अधिकतम (मामला जब (UserColumn1='Sam') तब UserColumn2 और NULL अंत) 'सैम' के रूप में -> valueAsColumn से -> UserId द्वारा समूह -> UserId द्वारा आदेश;

निम्न आउटपुट है -

<पूर्व>+----------+----------+----------+------+| उपयोगकर्ता आईडी | जॉन | कैरल | सैम |+----------+------+----------+------+| 0 | ए+ | बी | सी || 1 | डी | सी | NULL |+----------+------+----------+------+2 पंक्तियों में सेट (0.00 सेकंड)
  1. MySQL क्वेरी अलग-अलग मानों की घटनाओं की गणना करने और परिणाम को एक नए कॉलम में प्रदर्शित करने के लिए?

    आइए पहले एक टेबल बनाएं - टेबल बनाएं डेमोटेबल (वैल्यू इंट);क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.57 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - डेमोटेबल वैल्यू में डालें (90); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.12 सेकंड) चयन कथन का उपयोग करके तालिका से सभी रिकॉर्ड प्रदर्शित करें

  1. पंक्तियों के मूल्यों को समेटने और परिणाम को क्रमबद्ध करने के लिए MySQL क्वेरी?

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

  1. एकल MySQL क्वेरी में सभी कॉलम नामों के लिए 'उपनाम' सेट करें

    कॉलम नामों के लिए उपनाम सेट करने के लिए, सिंटैक्स इस प्रकार है - अपना कॉलमनाम1 किसी भी उपनामनाम1 का चयन करें, अपने कॉलमनाम2 को अपने टेबलनाम से किसी भी उपनाम का चयन करें; ऊपर दिए गए सिंटैक्स को समझने के लिए, आइए एक टेबल बनाएं - );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.70 सेकंड) इंसर्ट कमांड का उपयोग