sql - Pivoting a table in Oracle 10g -
इस सवाल का पहले से ही एक उत्तर है: < / P>
- 2 जवाब
मेरे पास एक धुरी के बारे में प्रश्न है
संरचना
कॉलम के नाम का डेटा प्रकार
EMP_NAME VARCHAR2 (30)डीटी संख्या (2,0)
/ P>
वर्तमान VARCHAR2 (1)
EMP_NAME डीटी उपस्थित <प्री>
वी 1 वाई वी 2 वाई वी 3 वाई वी 4 वाईआर 1 एनआर 2 वाईआर 3 वाईआर 4 एनके 1 वाईके 2 वाईके 3 वाईके 4 एन
मैं इस तालिका को बाईं ओर नाम, शीर्ष पर और वर्तमान में उपस्थिति दिखाने के लिए चाहूंगा (और अधिक उपस्थिति पत्र की तरह)। मुझे इंटरनेट से एक कोड मिला है, लेकिन यह वास्तव में मेरी मदद करता है कृपया मदद करें ..
अपेक्षित आउटपुट ::
नाम 1 2 3 4 5 6 7 8 9 10 11 12 .......
आर Yyny ......
वी nyyn ......
के yyyy ....
नामों की संख्या बढ़ सकती है और डीटी कॉलम के लिए डेटा श्रेणी 1-31 से होगी
पहले से धन्यवाद
विवेक
यहाँ है समाधान, लेकिन आपको मूल्यों की संख्या पहले से जानने की आवश्यकता है यहां पर धारणा यह है कि 'वाई' & gt; 'एन'।
यह भी ध्यान रखें, यदि वास्तव में तालिका में कुछ मान गायब है, जैसे कि कुछ तारीख के लिए कोई रिकॉर्ड नहीं है, तो MAX फ़ंक्शन रिक्त हो जाएगा। आपको इसके बाद NVL खंड से घेरे हुए होना चाहिए। EMP_NAME, अधिकतम (ए 1), 1 के रूप में अधिकतम, ए 2 के रूप में अधिकतम (ए 2), अधिकतम (ए 3) ए 3 के रूप में चुनें। .. से (चुनें EMP_NAME, डीकोड (डीटी, '1', वर्तमान) ए 1, डीकोड (डीटी, '2', वर्तमान) के रूप में ए 2, डीकोड (डीटी, '3', वर्तमान) के रूप में ए 3 ... परीक्षा से ) EMP_NAME द्वारा क्रमबद्ध EMP_NAME द्वारा समूह;
Comments
Post a Comment