sql - Regarding case when in stored procedure -
मेरे पास क्वेरी है।
घोषित करें @Prm_CourseId int घोषित @Prm_SpecializationId int सेट @Prm_CourseId = 5 सेट @ प्राम्मिललआईआईजी = 0 घोषित @WhrStr varchar (500) सेट @WhrStr = मामला @Prm_CourseId जब 0 और फिर 'ई। कोर्सेड रिक्त है या ई। कैर्सआईड रिक्त नहीं है' -1 तब 'ई। काउर्सआईडी रिक्त है या ई .CourseId शून्य नहीं है 'जब isnull (@ Prm_CourseId, 0) तो' ई। काउंसिल नल है या ई। कोर्स ई 'नहीं है' और 'ई। कोर्सईड =' + कन्वर्ट (varchar, @ Prm_CourseId) अंत @WhrStr = मामला सेट @Prm_SpecializationId जब 0 तब 'ई। स्पेशलाइजेशन आईडी रिक्त नहीं है या ई। स्पेशलाइजेशनआईडी रिक्त नहीं है' जब -1 फिर 'ई। स्पेशलाइजेशन इंक रिक्त है या ई। स्पेशलाइजेशन आईडी' रिक्त नहीं है। ZationId, 0) तो 'ईएस स्पेशलाइजेशन इडाल रिक्त है या ई। स्पेशलाइजेशन इड रिक्त नहीं है' और 'ई। स्पेशलाइजेशनआईडी =' + कन्वर्ट (varchar, @prm_SpecializationId) अंत प्रिंट @WhrStr exec ('select f.EnquiryID, e। [Name ], F.Attendbyby, f.Remarks, f.CreditedDate से STD_FollowUp f में शामिल हो STD_Enquiry ई पर f.EnquiryId = e.EnquiryId जहां '+' + + @ WhrStr)
यहाँ समस्या है कि मैं @WhrStr में 1 और 2 के मामले के बयान में परिणाम प्राप्त करना चाहता हूं। परन्तु WhrStr में आने वाला मान 'ई। स्पेशलाइजेशन आईडी' है या शून्य नहीं है। स्पेशलाइजेशन आईआईडी शून्य नहीं है, इसका मतलब है कि 1 को दूसरे द्वारा अधिलेखित किया गया है। पहले से दूसरे।
यदि (isnull (@Prm_CourseId, 0) = 0 या isnull ( @Prm_CourseID, 0) = -1) सेट @Prm_CourseId = नल यदि (isnull (@Prm_SpecializationId, 0) = 0 या isnull (@Prm_SpecializationId, 0) = -1) सेट @Prm_SpecializationId = नल का चयन करें f.EnquiryID, e। [नाम], f.Attendbyby, f.Remarks, f STD_FollowUp f से जुड़ने वाले दिनांक में एसटीडी_एन्क्विरी ई पर एफ.इन्क्वाइआईआईडी = ई। जांचता है, जहां (@Prm_CourseId रिक्त है या ई.कार्सआईडी = @Prm_CourseId) या (@Prm_SpecializationId रिक्त या ई। स्पेशलाइजेशनआईडी = @Prm_SpecializationId) कोड> < / प्री>
Comments
Post a Comment