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

SQL Server:обединяване и добавяне на колони

За разлика от MySQL , SQL Server няма вградена функция за това. Но все още можете да го симулирате, като използвате CROSS APPLY и FOR XML PATH('')

SELECT  a.ID, 
        SUBSTRING(d.NameList,1, LEN(d.NameList) - 1) Names
FROM    a
        CROSS APPLY
        (
            SELECT DISTINCT [NAME] + '; ' 
            FROM  B 
            WHERE A.ID = B.DupID 
            FOR XML PATH('')
        ) D (NameList) 

Демо на SQLFiddle




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. InsertAllOnSubmit вмъква само първия запис на данни

  2. SYSUTCDATETIME() срещу GETUTCDATE() в SQL Server:Каква е разликата?

  3. Как да премахнете ограничение в SQL Server (T-SQL)

  4. Как може да се направи сравнение между времената в цикъла while в съхранената процедура?

  5. Инсталирайте SQL Server 2019 на Mac