Имя поля запятой Seprate в Sql Server 2008 - PullRequest
1 голос
/ 09 мая 2011

У меня есть имя таблицы "EmpMast" я хочу добавить все emp_name с запятой, как "Махеш, Vipul, Ritesh" Как я мог это сделать ???

Ответы [ 2 ]

0 голосов
/ 09 мая 2011

Этого можно достичь с помощью встроенных в SQL Server возможностей XML:

SELECT
   STUFF
   (
       (
           SELECT ',' + emp_name
           FROM EmpMast
           ORDER BY emp_name
           FOR XML PATH('')
       ), 1, 1, ''
   ) AS employee_names

Здесь оператор STUFF просто удаляет первую запятую из списка.

Подробнее о XML здесь: http://msdn.microsoft.com/en-us/library/ms345137(v=sql.90).aspx Подробнее о штучках здесь: http://msdn.microsoft.com/en-us/library/ms188043.aspx

Я полностью описал эту технику здесь: http://davidduffett.net/post/5334646215/get-a-column-separated-list-of-values-with-for-xml

0 голосов
/ 09 мая 2011

Я предполагаю, что вы импортируете файл CSV. Вот хороший пример здесь

BULK INSERT [orders]
FROM 'c:\orders.csv'
WITH (FIELDTERMINATOR = ',')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...