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

मैं एक फ़ंक्शन बनाए बिना SQL सर्वर में एक सीमांकित स्ट्रिंग को कैसे विभाजित करूं?

XML का उपयोग करने वाला एक संस्करण।

declare @S varchar(100) = 'Hello John Smith'

select 
  n.r.value('.', 'varchar(50)')
from (select cast('<r>'+replace(@S, ' ', '</r><r>')+'</r>' as xml)) as s(XMLCol)
  cross apply s.XMLCol.nodes('r') as n(r)

इसके बजाय किसी तालिका का उपयोग करना @T को बदलें आप जिस भी टेबल का उपयोग कर रहे हैं उसके साथ।

-- Test table
declare @T table (ID int, Col varchar(100))
insert into @T values (1, 'Hello John Smith')
insert into @T values (2, 'xxx yyy zzz')

select 
  T.ID,
  n.r.value('.', 'varchar(50)')
from @T as T
  cross apply (select cast('<r>'+replace(replace(Col,'&','&amp;'), ' ', '</r><r>')+'</r>' as xml)) as S(XMLCol)
  cross apply S.XMLCol.nodes('r') as n(r)

स्ट्रिंग को विभाजित करना 'Hello John Smith' एक चर का उपयोग किए बिना

select 
  n.r.value('.', 'varchar(50)')
from (select cast('<r>'+replace('Hello John Smith', ' ', '</r><r>')+'</r>' as xml)) as s(XMLCol)
  cross apply s.XMLCol.nodes('r') as n(r)


  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 सर्वर VARBINARY कॉलम में बाइट [] कैसे सम्मिलित करूं?

  2. SQL सर्वर के लिए समूहीकृत स्ट्रिंग एकत्रीकरण / LISTAGG

  3. मैं SQL सर्वर में क्वेरी निष्पादन योजना कैसे प्राप्त करूं?

  4. SQL सर्वर 2017 में डेटा डालें

  5. फ़ंक्शन में SQL सर्वर में अल्पविराम सीमांकित मानों से भरा एक वर्चर पास करना