Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

टी-एसक्यूएल का उपयोग करके उप-स्ट्रिंग की अंतिम घटना की अनुक्रमणिका पाएं

सीधा रास्ता? नहीं, लेकिन मैंने इसका उल्टा इस्तेमाल किया है। सचमुच।

पूर्व रूटीन में, किसी दिए गए स्ट्रिंग के अंतिम अवसर को खोजने के लिए, मैंने REVERSE() फ़ंक्शन का उपयोग किया, इसके बाद CHARINDEX, उसके बाद मूल ऑर्डर को पुनर्स्थापित करने के लिए फिर से REVERSE का उपयोग किया। उदाहरण के लिए:

SELECT
   mf.name
  ,mf.physical_name
  ,reverse(left(reverse(physical_name), charindex('\', reverse(physical_name)) -1))
 from sys.master_files mf

दिखाता है कि वास्तविक डेटाबेस फ़ाइल नामों को उनके "भौतिक नामों" से कैसे निकाला जाए, इससे कोई फर्क नहीं पड़ता कि सबफ़ोल्डर में कितनी गहराई से घोंसला है। यह केवल एक वर्ण (बैकस्लैश) की खोज करता है, लेकिन आप इस पर लंबी खोज स्ट्रिंग के लिए निर्माण कर सकते हैं।

केवल नकारात्मक पक्ष यह है कि, मुझे नहीं पता कि यह टेक्स्ट डेटा प्रकारों पर कितनी अच्छी तरह काम करेगा। मैं अब कुछ वर्षों से SQL 2005 पर हूँ, और अब मैं TEXT के साथ काम करने से परिचित नहीं हूँ - लेकिन मुझे याद है कि आप इस पर LEFT और RIGHT का उपयोग कर सकते हैं?

फिलिप



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL सर्वर को हबस्पॉट CRM से कनेक्ट करें

  2. कीवर्ड समर्थित नहीं:मेटाडेटा

  3. मैं SQL Server 2008 R2 में CONCAT फ़ंक्शन का उपयोग कैसे करूं?

  4. ब्राउज़र में जावास्क्रिप्ट से SQL सर्वर डेटाबेस से कैसे कनेक्ट करें?

  5. SQL सर्वर 2016 अस्थायी तालिका क्वेरी योजना व्यवहार