TRIM (Transact-SQL)
Область применения: SQL Server 2017 (14.x) и более поздних версий База данных SQL Azure Управляемый экземпляр SQL Azure Конечная точка аналитики Synapse Analytics Synapse Analyticsв хранилище Microsoft Fabricв Microsoft Fabric
Удаляет символ пробела char(32)
или другие заданные символы в начале и конце строки.
При необходимости удаляет пробел char(32)
или другие указанные символы из начальной, конечной или обеих сторон строки.
Начиная с SQL Server 2022 (16.x), при необходимости удаляет пробел char(32)
или другие указанные символы из начала, конца или обеих сторон строки.
Соглашения о синтаксисе Transact-SQL
Синтаксис
Синтаксис SQL Server 2022 (16.x) и более ранних версий, База данных SQL Azure и Azure Synapse Analytics:
TRIM ( [ characters FROM ] string )
Синтаксис ДЛЯ SQL Server 2022 (16.x) и более поздних версий, Управляемый экземпляр SQL Azure и Microsoft Fabric:
Важно!
Для использования LEADING
TRAILING
ключевое слово базы BOTH
данных требуется 160
уровень совместимости базы данных.
TRIM ( [ LEADING | TRAILING | BOTH ] [characters FROM ] string )
Примечание.
Сведения о синтаксисе Transact-SQL для SQL Server 2014 (12.x) и более ранних версиях см . в документации по предыдущим версиям.
Аргументы
[ LEADING | TRAILING | BOTH ]
Область применения: SQL Server 2022 (16.x) и более поздних версий, Управляемый экземпляр SQL Azure и Microsoft Fabric:
Необязательный первый аргумент указывает, какую сторону строки следует обрезать:
LEADING
удаляет символы, указанные в начале строки.TRAILING
удаляет символы, указанные в конце строки.BOTH
(поведение по умолчанию) удаляет символы, указанные в начале и конце строки.
characters
Литерал, переменная или вызов функции любого типа символов, отличного от большого объекта (nvarchar, varchar, nchar или char), которые содержат удаляемые символы. Типы nvarchar(max) и varchar(max) не допускаются.
string
Выражение любого типа символа (nvarchar, varchar, nchar или char), где должны быть удалены символы.
Типы возвращаемых данных
Возвращает символьное выражение с типом аргумента string, в котором символ пробела char(32)
или другие заданные символы удалены с обеих сторон. Возвращает NULL
, если входная строка равна NULL
.
Замечания
По умолчанию функция TRIM
удаляет символ пробела как в начале, так и в конце строки. Такая реакция на событие эквивалентна LTRIM(RTRIM(@string))
.
Чтобы включить необязательные LEADING
TRAILING
аргументы или BOTH
позиционные аргументы в SQL Server 2022 (16.x), необходимо включить уровень 160
совместимости базы данных в базе данных, к которую вы подключаетесь при выполнении запросов.
- При использовании необязательного позиционного аргумента
LEADING
поведение эквивалентноLTRIM(@string, characters)
. - При использовании необязательного позиционного аргумента
TRAILING
поведение эквивалентноRTRIM(@string, characters)
.
Примеры
А. Удаление пробела с обеих сторон строки
В приведенном ниже примере удаляются пробелы перед словом test
и после него.
SELECT TRIM( ' test ') AS Result;
Результирующий набор:
test
B. Удаление указанных символов с обеих сторон строки
В следующем примере представлен список возможных символов для удаления из строки.
SELECT TRIM( '.,! ' FROM ' # test .') AS Result;
Результирующий набор:
# test
В этом примере удалены только конечная точка, а также пробелы перед символом #
и после слова test
. Другие символы были проигнорированы, так как их не было в строке.
C. Удаление указанных символов из начала строки
Важно!
Для использования LEADING
TRAILING
ключевое слово базы BOTH
данных требуется 160
уровень совместимости базы данных.
В следующем примере из начала строки удаляется начальный символ .
перед словом test
.
SELECT TRIM(LEADING '.,! ' FROM ' .# test .') AS Result;
Результирующий набор:
# test .
D. Удаление указанных символов из конца строки
Важно!
Для использования LEADING
TRAILING
ключевое слово базы BOTH
данных требуется 160
уровень совместимости базы данных.
В следующем примере из конца строки удаляется конечный символ .
после слова test
.
SELECT TRIM(TRAILING '.,! ' FROM ' .# test .') AS Result;
Результирующий набор:
.# test
Д. Удаление указанных символов из начала и конца строки
Важно!
Для использования LEADING
TRAILING
ключевое слово базы BOTH
данных требуется 160
уровень совместимости базы данных.
В следующем примере символы 123
удаляются из начала и конца строки 123abc123
.
SELECT TRIM(BOTH '123' FROM '123abc123') AS Result;
Результирующий набор:
abc
Связанный контент
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по