के साथ चयन करने के लिए कौन सी तालिका बदलना है मैं एक संग्रहीत प्रक्रिया लिखने की कोशिश कर रहा हूं और एक निश्चित कॉलम मान के आधार पर, मैं उस तालिका को बदलने में सक्षम होना चाहता हूं, जिसे मैं चुनता हूं। मैं एक उदाहरण देना करने की कोशिश करेंगे:गतिशील रूप से एसक्यूएल केस स्टेटमेंट
SELECT ItemNumber,
ItemType,
Description
FROM
CASE ItemType
WHEN 'A' THEN TableA
ELSE TableB
END
WHERE
CASE ItemType
WHEN 'A' THEN ItemNumber = @itemNumber
ELSE PartNumber = @itemNumber
END
आप देख सकते हैं, न केवल मैं गतिशील तालिका मैं से चयन बदलते रहा हूँ, लेकिन इन दो तालिकाओं दो अलग-अलग लोगों द्वारा दो अलग अलग समय पर किए गए थे के बाद से, कॉलम नाम भी अलग हैं।
तो, मेरा सवाल है: इसे पूरा करने का सबसे अच्छा तरीका क्या है, क्योंकि SQL सर्वर मेरी क्वेरी को पसंद नहीं करता है।
हैं जो कोई क्या मैं यह करने के लिए एक बेहतर तरीका सुझाव है कि कर सकते हैं करने के लिए कोशिश कर रहा हूँ, मैं :-)
जबकि लोग आमतौर पर "एसक्यूएल सर्वर" == "एमएस एसक्यूएल सर्वर" मानते हैं, तो बेहतर है कि आप इसे प्रश्न में और टैग में स्पष्ट करते हैं। मैं टैग बदल रहा हूं, अगर मैं गलत हूं तो वापस लौटाएं। –
sqlserver माइक्रोसॉफ्ट एसक्यूएल सर्वर के लिए टैग है। वर्तमान में उस नाम से कोई अन्य उत्पाद नहीं है, और इसके लिए एसओ पर यह एकमात्र उपयोगी टैग है। –