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

Utwórz osobny wiersz, jeśli kolumna zawiera wartość oddzieloną przecinkami

Możesz napisać zapytanie jako:

DECLARE @employee TABLE (FirstName  VARCHAR(100),
                         LastName   VARCHAR(100),
                         PayScale INT)

INSERT INTO @employee VALUES 
('Craig','L',150000) , 
('Alice,Lisa','simons',100000)



SELECT Split.a.value('.', 'VARCHAR(100)') AS FirstName  , LastName  ,PayScale
       FROM  (SELECT  CAST ('<M>' + REPLACE(FirstName, ',', '</M><M>') + '</M>' 
                             AS XML) AS FirstName ,  LastName    ,PayScale
               FROM  @employee) 
       AS A 
CROSS APPLY FirstName.nodes ('/M') AS Split(a)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. pyodbc nie może połączyć się z bazą danych

  2. Wyłącz dziennik transakcji

  3. Ciąg połączenia ADO.NET

  4. TSQL Msg 1013 Użyj nazw korelacji, aby je rozróżnić.

  5. Złożony klucz podstawowy w zmiennej typu Tabela