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

SQL सर्वर 2005:स्ट्रिंग को सरणी में विभाजित करें और सरणी (x) प्राप्त करें?

मैं यहाँ मान रहा हूँ कि हमेशा ठीक 4 भाग होते हैं।

अगर ऐसा है, तो आप / . को बदल सकते हैं . और ParseName समारोह। आपके उदाहरण से एकमात्र समस्या यह है कि यह अंत से गिना जाता है, इसलिए आपको सावधान रहना होगा कि आपको कौन सा भाग चाहिए:

DECLARE @test VARCHAR(max);
SET @test = 'Peter/Parker/Spiderman/Marvel';
SET @test = Replace(@test, '/', '.');

SELECT Parsename(@test, 4),--returns Peter
       Parsename(@test, 3),--returns Parker
       Parsename(@test, 2),--returns Spiderman
       Parsename(@test, 1) --returns Marvel

यदि भागों की एक चर संख्या है, तो आपके लिए ऐसा करने के लिए आपको एक स्ट्रिंग विभाजन फ़ंक्शन ढूंढना होगा, इसमें कोई अच्छा अंतर्निहित नहीं है। कई विकल्प खोजे जा सकते हैं SO:https://stackoverflow.com/search?q=[sql+server]+string+split

चेतावनी का शब्द - यदि आप PARSENAME . के साथ किसी संख्या का उपयोग करने का प्रयास करते हैं 1-4 के अलावा, परिणाम हमेशा NULL होगा।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. tsql एक स्ट्रिंग के अंदर की अंतिम घटना

  2. Microsoft.ACE.OLEDB.12.0 . के साथ SQL सर्वर में Excel

  3. कर्सर का उपयोग किये बिना टीएसक्यूएल में टेबल वैरिएबल के माध्यम से लूप करने का कोई तरीका है?

  4. दो संख्याओं के बीच संख्याओं की श्रेणी कैसे उत्पन्न करें?

  5. SQL सर्वर एजेंट कार्य संशोधित करें (T-SQL)