मैं एक मेज है कि इस तरह दिखता है:परिणामी कॉलम नामों को जानने के बिना SQL सर्वर पिवट कर सकते हैं?
Month Site Val
2009-12 Microsoft 10
2009-11 Microsoft 12
2009-10 Microsoft 13
2009-12 Google 20
2009-11 Google 21
2009-10 Google 22
और मैं एक 2-आयाम तालिका है कि प्रत्येक साइट के महीने के लिए मुझे देता है "वैल", की तरह प्राप्त करना चाहते हैं:
Month Microsoft Google
2009-12 10 20
2009-11 12 21
2009-10 13 22
लेकिन पकड़ है, मैं उन सभी संभावित मानों को नहीं जानता जो "साइट" में हो सकते हैं। यदि कोई नई साइट दिखाई देती है, तो मैं अपनी परिणामी तालिका में स्वचालित रूप से एक नया कॉलम प्राप्त करना चाहता हूं।
सभी कोड नमूने मैंने देखा कि ऐसा करने के लिए मुझे क्वेरी टेक्स्ट में "माइक्रोसॉफ्ट और Google" हार्डकोड करने की आवश्यकता थी।
I saw one that didn't, लेकिन यह मूल रूप से साइट्स को सूचीबद्ध करके और फ्लाई पर एक क्वेरी उत्पन्न कर रहा था (एक स्ट्रिंग को जोड़कर) जिसमें उस कॉलम नाम थे।
क्या ऐसा कोई हैक के बिना SQL Server 2008 को ऐसा करने का कोई तरीका नहीं है?
नोट: मुझे इसे एक क्वेरी के रूप में चलाने में सक्षम होना चाहिए जिसे मैं एएसपी.Net से भेजता हूं, मैं संग्रहीत प्रक्रियाओं या अन्य सामान नहीं कर सकता।
धन्यवाद!
डैनियल
क्या आप 'exec (@sql)' का उपयोग करके रन टाइम पर क्वेरी निष्पादित करके संभवतः देखना चाहिए [देखें] (http://stackoverflow.com/questions/15752112/)। – surfmuggle