SQL-запрос: данные с запятой - PullRequest
0 голосов
/ 21 августа 2009

Я использую SQL Server 2005. Я хочу данные с запятой. например ['5000'], ['5001'], ..

но последняя запись не должна содержать запятую. Пожалуйста, помогите мне.

Запрос:

выберите '[' '' + convert (varchar, parcelid) + '' '],' из таблицы сэмплов

Ответы [ 3 ]

1 голос
/ 21 августа 2009

Попробуйте функцию COALESCE

SELECT @groupedText = COALESCE(@groupedText, '') + [Text] + ','
     FROM Requirement
     WHERE CampaignId = @campaignId
     ORDER BY [Text]

Тогда вы можете попробовать одну из строковых функций, чтобы убить запятую в конце

Строковые функции T-SQL

0 голосов
/ 21 августа 2009

Рассмотрите возможность использования XML для этой цели. Решение «совокупной конкатенации» может быть ненадежным, поскольку оно не имеет четкого документирования и поддержки. Вы можете избавиться от последней запятой с помощью SUBSTRING, как подсказал Бун.

См. эту тему .

0 голосов
/ 21 августа 2009

Вы можете использовать регулярные выражения для удаления последней запятой или сделать это, используя язык программирования (ASP и т. Д., Например, функцию chop или что-то в этом роде).

http://weblogs.sqlteam.com/jeffs/archive/2007/04/27/SQL-2005-Regular-Expression-Replace.aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...