Friday, 15 June 2012

sql - how to split a column into multiple columns in mysql -


मेरे पास ऐसा स्तंभ है

  + -------------- ------------ + | अंक | + ---------------------- + + | गणित -80, फ़ा-100, चे-99 | | गणित -90, फाई -60 | | Phy-82, Che-65 | | चे -90 | 
| गणित -33, फाई -8 9, चे -65 | | गणित -50, फाई -43, चे -59 | + -------------------------- +
मैं सिर्फ 3 नमूना विषयों देता हूं लेकिन वास्तविकता में यह शायद किसी भी संख्या में अल्पविराम से अलग विषयों इसके लिए मैं प्रत्येक विषय के अंक चिन्हों को अलग करके अंकों के स्तंभ को विभाजित करना चाहता हूं और इसे नीचे के नमूने जैसे कई कॉलम में प्रदर्शित करना चाहता हूं।

<पूर्व> + ------------------------------------- + ------------ + ------------ + | अंक | गणित | Phy | चे | + ------------------------------------- + ----------- - + ------------- + + मैथ्स -80, फी-100, चे-99 | 80 | 100 | 99 | गणित -90, फाई -60 | 90 | 60 | 0 | Phy-82, Che-65 | 0 | 82 | 65 | चे-90 | 90 | 0 | 0 | गणित -33, Phy-89, Che-65 | 33 | 89 | 65 | गणित -50, फाई -43, चे -59 | 50 | 43 | 59 | + ------------------------------------- + ----------- - + ------------- +

दिए गए उदाहरण डेटा के साथ आप नीचे कुछ कर सकते हैं -

  mysql & gt; टेबल टेस्ट बनाएं (अंक वैचारार (100)); क्वेरी ठीक है, 0 पंक्तियों को प्रभावित (0.12 सेकंड) mysql & gt; परीक्षण मूल्यों ('मैथ्स -80, फाइट -100, चे -99'), ('मैथ्स -90, फाई -60'), ('फाई -82, चे -65'), ('चे -90' ), ( 'गणित-33, बनावट-89, चे-65'), ( 'गणित-50, बनावट-43, चे-59'); क्वेरी ठीक है, प्रभावित 6 पंक्तियों (0.04 सेकंड) रिकॉर्ड्स: 6 डुप्लिकेट: 0 चेतावनियाँ: 0 mysql & gt; परीक्षा से * चुनें; + ------------------------- + | अंक | + ------------------------- + | गणित -80, Phy-100, Che-99 | | गणित -90, फाई -60 | | Phy-82, Che-65 | | चे-90 | | गणित -33, Phy-89, Che-65 | | गणित -50, फाई -43, चे -59 | + ------------------------- + 6 पंक्तियां सेट (0.00 सेकंड)  

अब खोज और substring_index के रूप में हम मूल्यों को निकाल सकते हैं

  चुनिंदा अंक, मामले का पता लगाएँ ('गणित', चिह्न) & gt; 0 फिर substring_index (substring_index (अंक, 'गणित -', - 1), ',', 1) दूसरे 0 गणित के रूप में अंत, मामले का पता लगाने ('Phy', निशान) & gt; 0 फिर substring_index (substring_index (निशान, 'फी', - 1), ',', 1) दूसरा 0 पीएचई के रूप में अंत, मामले को खोजें ('चे', निशान) & gt; 0 तो substring_index (substring_index (अंक, 'चे -', - 1), ',', 1) दूसरे 0 परीक्षा से चे के रूप में अंत;  

आउटपुट:

  + ------------------------- + ------- + ------ + ------ + | अंक | गणित | Phy | चे | + ------------------------- + ------- + ------ + ------ + | गणित -80, Phy-100, Che-99 | 80 | 100 | 99 | | गणित -90, फाई -60 | 90 | 60 | 0 | | Phy-82, Che-65 | 0 | 82 | 65 | | चे-90 | 0 | 0 | 90 | | गणित -33, Phy-89, Che-65 | 33 | 89 | 65 | | गणित -50, फाई -43, चे -59 | 50 | 43 | 59 | + ------------------------- + ------- + ------ + ------ + 6 सेट में पंक्तियां (0.00 सेकंड)  

No comments:

Post a Comment