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

Как да свържете всички колони в избран със SQL Server

Произволен брой колони за дадено име на таблица;Ако имате нужда от имена на колони обвит с <text>

DECLARE @s VARCHAR(500)

SELECT @s =  ISNULL(@s+', ','') + c.name   
FROM  sys.all_columns c join sys.tables  t 
            ON  c.object_id = t.object_id
WHERE t.name = 'YourTableName'

SELECT '<text>' + @s + '</text>'

SQL Fiddle Пример тук

-- RESULTS 
<text>col1, col2, col3,...</text>

Ако имате нужда, изберете заявка упакован набор от резултати с <text> тогава;

SELECT @S =  ISNULL( @S+ ')' +'+'',''+ ','') + 'convert(varchar(50), ' + c.name    FROM 
       sys.all_columns c join sys.tables  t 
       ON  c.object_id = t.object_id
WHERE t.name = 'YourTableName'


EXEC( 'SELECT ''<text>''+' + @s + ')+' + '''</text>'' FROM YourTableName')

SQL Fiddle Пример тук

--RESULTS
<text>c1r1,c2r1,c3r1,...</text>
<text>c1r2,c2r2,c3r2,...</text>
<text>c1r3,c2r3,c3r3,...</text>


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Трябва ли да индексирам битово поле в SQL Server?

  2. Как да позволя на параметър на падащ списък в SSRS да има стойност по подразбиране на -- All -- ?

  3. Автоматизирано извличане на номера на версията от .Dtsx файлове

  4. Как да разделите стойност, разделена със запетая, на колони

  5. Групово вмъкване на SQL Server – част 1