Функция TRIM()
является новой для Sql Server 2017. Для более старых версий Sql Server необходимо использовать более старые функции LTRIM()
и RTRIM()
, которые не имеют одинаковых *Синтаксис 1006 * или другие более сложные строковые функции, такие как CHARINDEX()
и SUBSTRING()
.
Здесь проще всего будет REPLACE()
все пробелы со специальным знаком, который, как вы знаете, не является частью ваших данных,затем REPLACE()
все запятые с пробелом, обрезать пробелы с помощью старых функций LTRIM()
/ RTRIM()
, REPLACE()
пробелы снова до запятых и REPLACE()
специальный символ обратно до пробелов.
REPLACE(REPLACE(RTRIM(LTRIM(REPLACE(REPLACE(column, ' ', '|'), ',', ' '))), ' ', ','), '|', ' ')
Или, если вы знаете, что, скорее всего, будет только одна дополнительная конечная или начальная запятая, вы можете проверить это и использовать SUBSTRING (), чтобы вырезать только этот символ.