दिलचस्प पोस्ट
जावास्क्रिप्ट में मैं कैसे एक सरणी को खाली कर सकता हूं? ऐप्प पहली बार खोला जाता है, जब एक बार ही गतिविधि कैसे शुरू करें? शैल स्क्रिप्ट एन्कोडिंग और रेखा के अंत के प्रति संवेदनशील हैं? जावा के साथ स्मृति रिसाव बनाना "Android.view.विंडो प्रबंधक $ BadTokenException:" buider.show पर विंडो जोड़ने में असमर्थ () स्विंग जावा में एक जेफ्राम मोडल कैसे बनाएं कैसे बाइट सरणी को स्ट्रिंग में परिवर्तित करें विदेशी कुंजी बाधा प्रस्तुत करने से चक्र या एकाधिक कास्टेड पथ हो सकते हैं – क्यों? तालिका शीर्षक शीर्ष पर तय रहने के लिए जब उपयोगकर्ता इसे jQuery के दृश्य से बाहर स्क्रॉल करता है जावा शून्य-शून्य निकास मूल्य 2 – एंड्रॉइड ग्रेडल के साथ समाप्त हुआ क्यों हैश फ़ंक्शन किसी प्रधानांक संख्या मापांक का उपयोग करना चाहिए? Jquery UI datepicker तिथियों की सरणी अक्षम करें मैं सी # में कार्य प्रबंधक में एक प्रक्रिया कैसे छुपाऊँ? जेपीए और हाइबरनेट में क्या अंतर है? JSON.NET में deserialization के लिए इंटरफेस कास्टिंग

मैं एक प्रकार की श्रेणी में वर्ग कोष्ठों से कैसे बच सकता हूं?

मैं इस तरह से एक संग्रहीत प्रक्रिया के साथ वस्तुओं को फिल्टर करने की कोशिश कर रहा हूँ कॉलम एक varchar (15) है। जिन आइटमों को मैं फ़िल्टर करने की कोशिश कर रहा हूं, वे नाम में चौकोर ब्रैकेट हैं I

उदाहरण के लिए: WC[R]S123456

अगर मैं LIKE 'WC[R]S123456' करता हूं तो वह कुछ भी वापस नहीं आएगा।

मुझे ESCAPE खोजशब्द का उपयोग करने के बारे में कुछ जानकारी मिली है, लेकिन मुझे यह समझ में नहीं आता है कि नियमित स्ट्रिंग के रूप में वर्ग कोष्ठक के इलाज के लिए इसका उपयोग कैसे करें।

वेब के समाधान से एकत्रित समाधान "मैं एक प्रकार की श्रेणी में वर्ग कोष्ठों से कैसे बच सकता हूं?"

 LIKE 'WC[[]R]S123456' 

या

 LIKE 'WC\[R]S123456' ESCAPE '\' 

कार्य करना चाहिए।

आपको शाब्दिक मिलान करना चाहते हैं: its[brac]et

आपको बचने की आवश्यकता नहीं है क्योंकि इसका विशेष अर्थ केवल तब होता है जब इसे जोड़ा गया हो [

इसलिए बचने [ समस्या को हल करने के लिए पर्याप्त है आप [[] द्वारा इसे स्थानांतरित करने से बच सकते हैं

मुझे उन नामों को बाहर करने की ज़रूरत है जो एक पूछताछ से अंडरस्कोर के साथ शुरू हुई थी, इसलिए मैंने इसके साथ समाप्त हुआ:

 WHERE b.[name] not like '\_%' escape '\' -- use \ as the escape character 

यहाँ वास्तव में मैं क्या प्रयोग किया है:

 like 'WC![R]S123456' ESCAPE '!' 

एस्केप कीवर्ड का उपयोग किया जाता है यदि आपको विशेष वर्ण जैसे% और _ के लिए खोज करने की आवश्यकता है, जो आमतौर पर वाइल्ड कार्ड हैं यदि आप एस्केपई निर्दिष्ट करते हैं, तो SQL अक्षर और% के लिए वाकई खोज करेगा।

यहाँ कुछ और उदाहरणों के साथ एक अच्छा लेख है

 SELECT columns FROM table WHERE column LIKE '%[[]SQL Server Driver]%' -- or SELECT columns FROM table WHERE column LIKE '%\[SQL Server Driver]%' ESCAPE '\' 

कुंजीपटल पर '\' या दूसरे अक्षर के बजाय, आप विशेष वर्णों का भी उपयोग कर सकते हैं जो कीबोर्ड पर नहीं हैं आपके उपयोग के मामले के आधार पर यह आवश्यक हो सकता है, यदि आप उपयोगकर्ता इनपुट को एस्केप वर्ण के रूप में इस्तेमाल नहीं करना चाहते हैं

यदि आपको '_' (अंडरस्कोर) जैसे विशेष पात्रों से बचने की आवश्यकता होगी, क्योंकि यह मेरे मामले में था, और आप एक एस्केप खंड को परिभाषित करने में सक्षम नहीं / सक्षम नहीं हैं, तो आप विशेष वर्ण को चौकस बक्से के साथ संलग्न करना चाहते हैं [ ' और '] '

यह "अजीब" स्ट्रिंग '[[]]' का अर्थ बताता है – यह '[' चरित्र को वर्ग के कोष्ठक के साथ गले लगाता है, इसे प्रभावी ढंग से बचाना

मेरे उपयोग का मामला एक संग्रहित कार्यप्रणाली का नाम निर्दिष्ट करना था जिसमें उसमें अंडरस्कोर शामिल होता है, जो कि प्रोफ़ाईलर के लिए फ़िल्टर मानदंड के रूप में होता है। इसलिए मैंने स्ट्रिंग '% name [_] की [_] a [_] संग्रहित [_] कार्यप्रणाली%' की तरह एक टेक्स्टडाटा फ़ील्ड में डाल दी है और उसने मुझे प्राप्त करने के लिए परिणाम प्राप्त करने का पता लगाया।

यहां दस्तावेज़ीकरण का एक अच्छा उदाहरण है: LIKE (ट्रांसएक्ट-एसक्यूएल) – वाइल्डकार्ड वर्णों का उपयोग लाइल्टर के रूप में

दस्तावेज के अनुसार:

आप वाइल्डकार्ड पैटर्न वर्णों को अक्षर के रूप में मेल कर सकते हैं। वाइल्डकार्ड वर्ण को एक शाब्दिक चरित्र के रूप में उपयोग करने के लिए, वाइल्डकार्ड वर्ण को कोष्ठक में जोड़ें।

आपको इन तीनों वर्णों से बचने की जरूरत %_[ :

 '5%' LIKE '5[%]' -- true '5$' LIKE '5[%]' -- false 'foo_bar' LIKE 'foo[_]bar' -- true 'foo$bar' LIKE 'foo[_]bar' -- false 'foo[bar' LIKE 'foo[[]bar' -- true 'foo]bar' LIKE 'foo]bar' -- true