मैंने चारों ओर खोज करने की कोशिश की लेकिन मुझे कुछ भी नहीं मिला जो मेरी मदद करेगा।एसक्यूएल स्विच/केस जहां क्लॉज
मैं एसक्यूएल में यह करने के लिए कोशिश कर रहा हूँ:
declare @locationType varchar(50);
declare @locationID int;
SELECT column1, column2
FROM viewWhatever
WHERE
CASE @locationType
WHEN 'location' THEN account_location = @locationID
WHEN 'area' THEN xxx_location_area = @locationID
WHEN 'division' THEN xxx_location_division = @locationID
मैं जानता हूँ कि मैं '= @locationID' हर एक के अंत में डाल करने के लिए नहीं होना चाहिए कि लेकिन मैं वाक्य रचना नहीं मिल सकता है सही होने के करीब भी। एसक्यूएल पहली 'लाइन' पर मेरी '=' के बारे में शिकायत करता रहता है ...
सहायता!
TomH के रूप में आपके उत्तर की टिप्पणी में नोट नीचे, आप एसक्यूएल गलत तरीके से गठन मामले की विकल्प हो सकता है। मैंने SQLServer 2005 में मेरा परीक्षण किया और यह ठीक काम किया। –
@ आवश्यक क्यों हैं? वो क्या करते हैं? – JedatKinports