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

podziel ciąg oddzielony przecinkami na kolumny

Spróbuj tego:

declare @s varchar(50) = '1,A;2,B;3,C'
--convert string to xml table (I used HTML tags for clarity)
declare @xml xml = cast('<tr><td>' + replace(replace(@s, ';', '</td></tr><tr><td>'), ',', '</td><td>') + '</td></tr>' as xml)
--query the xml to get SQL table
select tbl.col.value('td[1]', 'int') [ID],
       tbl.col.value('td[2]', 'varchar(10)') [Text]
from @xml.nodes('/tr') tbl(col)

Aby uzyskać więcej informacji:Konwertuj XML na SQL Server tabeli



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ClassNotFoundException — com.microsoft.jdbc.sqlserver.SQLServerDriver

  2. Jak wstawić wiele wierszy - potrzebna pętla?

  3. Jak działa OBJECTPROPERTYEX() w SQL Server

  4. Jak zdefiniować klucz główny automatycznego przyrostu w SQL Server

  5. Dlaczego SQL Server nie traktuje tego kodu w sposób błędny?