Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Съхранена процедура за анализиране на низ

Едно възможно решение е използването на 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. Заявката е неуспешна или услугата не е отговорила навреме?

  2. Отложената подготовка не може да бъде завършена грешка при използване на локална база данни като свързан сървър

  3. Синтаксис за заявка с параметри в Python (pyodbc)

  4. Как да вмъкнете прекъсване на ред в низ VARCHAR/NVARCHAR на SQL Server

  5. Свързване на вашето основно приложение на ASP.NET към локален екземпляр на SQLServer