Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

MySQL - कॉनकैट और group_concat का उपयोग करके पंक्ति मान को कॉलम नाम के रूप में कैसे प्रदर्शित करें?

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

SELECT
  t1.id,
  MAX(IF(t2.typename = 'CL', t1.available, NULL)) AS CL,
  MAX(IF(t2.typename = 'ML', t1.available, NULL)) AS ML
FROM table1 t1
  JOIN table2 t2
    ON t1.typeid = t2.typeid
GROUP BY
  t1.id;

MySQL पिवट टेबल (पंक्तियों को कॉलम में बदलना)

यदि एकाधिक available . है, तो MAX के बजाय GROUP_CONCAT फ़ंक्शन का उपयोग करें मान संभव हैं।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MYSQL त्रुटि:1045 (28000):उपयोगकर्ता 'रूट' @ 'लोकलहोस्ट' के लिए प्रवेश निषेध

  2. हाईचार्ट्स मल्टी लाइन ग्राफ

  3. MySQL:उन पंक्तियों का चयन करना जहाँ एक कॉलम रिक्त है

  4. टेक्स्ट कॉलम के साथ MySQL टेबल

  5. Mysql और php में समय के मुक्त ब्लॉक ढूँढना?