sql server plus SQL सर्वर सर्वर में नियमित अभिव्यक्तियाँ?




एसक्यूएल और plsql के बीच का अंतर (4)

यह देखें और यह । वे यह कैसे करना है पर महान पोस्ट कर रहे हैं।

क्या कुशल क्वेरीज़ करना संभव है जो पूर्ण नियमित अभिव्यक्ति सुविधा सेट का उपयोग करते हैं।

अगर माइक्रोसॉफ्ट वास्तव में उस सुविधा पर विचार नहीं करना चाहिए


Answer #1

मुझे लगता है कि हम SQL सर्वर 2008 (पदानुक्रम, भौगोलिक-स्थानिक) में नए प्रकारों से देख सकते हैं कि यदि माइक्रोसॉफ्ट इसको जोड़ता है तो यह एसक्यूएल सीएलआर असेंबली के रूप में आ जाएगा

यदि आप अपने डेटाबेस में असेंबलियों को स्थापित करने में सक्षम हैं, तो आप विजुअल स्टूडियो में एक नया डाटाबेस \ SQL सर्वर प्रोजेक्ट बनाकर अपना स्वयं रोल कर सकते हैं - यह आपको एक नया ट्रिगर / यूडीएफ / संग्रहित प्रोक / समेकित या यूडीटी बनाने की अनुमति देगा। आप सिस्टम में आयात कर सकते हैं। पाठ। नियमित वर्गों में अभिव्यक्तियाँ और वहां से जाएं।

उम्मीद है की यह मदद करेगा


Answer #2

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

इस मामले में, 'कुशल' प्रश्न 'एस-आरजी-सक्षम' हैं, जिसका अर्थ है कि वे खोज अनुमानों को कम करने के लिए इंडेक्स लुकअप का उपयोग कर सकते हैं। समानताएं (टी-जुड़ने) और सरल असमानता ऐसा कर सकती हैं। 'और' भविष्यवाणी भी ऐसा कर सकते हैं इसके बाद, हम टेबल, इंडेक्स और श्रेणी स्कैनिंग में आते हैं - यानी ऐसे ऑपरेशन जिन्हें रिकॉर्ड-बाय-रिकॉर्ड (इंडेक्स-कीबी द्वारा इंडेक्स-की) तुलना करना पड़ता है।

सोनटेक के उत्तर में एक क्वेरी में regexp कार्यक्षमता को बढ़ाने की एक विधि का वर्णन किया गया है, लेकिन आपरेशनों को रिकॉर्ड के आधार पर एक रिकॉर्ड पर तुलना करना पड़ता है। इसे फ़ंक्शन में लपेटने से फ़ंक्शन-आधारित सूचकांक की अनुमति होगी, जहां गणना का परिणाम सूचकांक में बना है (ओरेकल इस का समर्थन करता है और आप SQL सर्वर में इस आलेख में चर्चा की गई चालान की तरह उपयोग कर सकते हैं)। हालांकि, आप ऐसा एक मनमानी regexp के लिए नहीं कर सका।

सामान्य मामले में, एक नियमित अभिव्यक्ति की शब्दार्थों को एक तरह से उस तरह से प्रणयिंग मैच सेटों पर खुद को उधार देना नहीं होता है, जिससे कि सूचकांक ऐसा करता है, इसलिए क्वेरी ऑप्टिमाइज़र में रेक्सएप समर्थन को एकीकृत करना शायद संभव नहीं है।


Answer #3

एसक्यूएल सर्वर 2000 (और SQL सर्वर के किसी भी अन्य 32 बिट संस्करण) के लिए, वहाँ है xp_pcre , जो विस्तारित संग्रहित प्रक्रियाओं के एक सेट के रूप में पर्ल संगत नियमित अभिव्यक्ति का परिचय देता है। मैंने इसे इस्तेमाल किया है, यह काम करता है

अधिक हाल के संस्करण आपको नेट एंटीग्रेटेड रेगुलर एक्सप्रेशंस (डायरेक्ट रेग्युलर एक्सप्रेशंस ) तक सीधे पहुंच देते हैं (यह लिंक मरे हुए लगता है, यहां एक और है: एमएसडीएन: कैसे: सीएलआर डाटाबेस ऑब्जेक्ट्स के साथ काम करें )





sql-server-2000