T-sql-запрос для вывода значений в формате CSV - PullRequest
2 голосов
/ 30 августа 2011

У меня есть значения в таблице, как показано ниже.Мне нужно получить значения generation times в запятых для каждого subscriptionID.

SubscriptionID GenerationTimes

6519    NULL
6616    NULL
6617    NULL
6618    9:00:00
6618    17:00:00
6634    NULL
6698    0:00:00

Мне нужнырезультат выглядит следующим образом:

SubscriptionID GenerationTimes

6519    NULL
6616    NULL
6617    NULL
6618    9:00, 17:00
6634    NULL
6698    0:00:00

вы заметили, что для subscriptionID 6618 есть два раза генерации, и поэтому я должен поместить их в одну строку с запятой 'разделены.Пожалуйста, дайте мне предложение, как я могу написать заявление T-sql.

1 Ответ

5 голосов
/ 30 августа 2011

Вы можете использовать для XML-пути, например, так:

select 
      t1.SubscriptionID,
      (select GenerationTimes + ', '
       from tableName t2
       where t1.SubscriptionID = t2.SubscriptionID
       for xml path('')) as GenerationTimes
from tableName t1
group by t1.SubscriptionID
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...