Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Przechowywana procedura parsowania ciągu

Jednym z możliwych rozwiązań jest użycie XML

DECLARE @text VARCHAR(1000) 
        ,@xml xml

SELECT @text = 'City=Hyderabad | Mobile=48629387429 | Role=User | Name =Praveen'

SELECT @text = REPLACE(@text,'|','"')
    ,@text = REPLACE(@text,'=','="')
    ,@text = '<row ' + @text + '"/>'

SELECT @xml = CAST(@text AS XML)

select 
    line.col.value('@Name[1]', 'varchar(100)') AS Name
    ,line.col.value('@City[1]', 'varchar(100)') AS City
    ,line.col.value('@Mobile[1]', 'varchar(100)') AS Mobile 
    ,line.col.value('@Role[1]', 'varchar(100)') AS Role 
FROM @xml.nodes('/row') AS line(col)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak zmienić tabelę w SQL Server za pomocą instrukcji Alter — SQL Server / samouczek T-SQL, część 35

  2. SQL GUID vs Integer

  3. Zaawansowane wyszukiwanie z odległościami przy użyciu NHibernate i SQL Server Geography

  4. Jak zapobiec aktualizacjom tabeli, z wyjątkiem jednej sytuacji

  5. Jak zacząć korzystać z programu SQL Server na platformie Azure