Delen via


TRIM (Transact-SQL)

Van toepassing op: SQL Server 2017 (14.x) en latere versies Azure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics SQL Analytics-eindpuntin Microsoft FabricWarehouse in Microsoft Fabric

Hiermee verwijdert u het spatieteken char(32) of andere opgegeven tekens uit het begin en einde van een tekenreeks.

U kunt eventueel het spatieteken char(32) of andere opgegeven tekens verwijderen uit de begin-, eind- of beide zijden van een tekenreeks.

Vanaf SQL Server 2022 (16.x) verwijdert u eventueel het spatieteken char(32) of andere opgegeven tekens van de begin-, eind- of beide zijden van een tekenreeks.

Transact-SQL syntaxis-conventies

Syntaxis

Syntaxis voor SQL Server 2022 (16.x) en eerdere versies, Azure SQL Database en Azure Synapse Analytics:

TRIM ( [ characters FROM ] string )

Syntaxis voor SQL Server 2022 (16.x) en latere versies, Azure SQL Managed Instance en Microsoft Fabric:

Belangrijk

U moet uw databasecompatibiliteitsniveau instellen om de LEADINGtrefwoorden of BOTHTRAILINGtrefwoorden te 160 kunnen gebruiken.

TRIM ( [ LEADING | TRAILING | BOTH ] [characters FROM ] string )

Arguments

[ VOORLOOP | AFSLUITEND | BEIDE ]

Van toepassing op: SQL Server 2022 (16.x) en latere versies, Azure SQL Managed Instance en Microsoft Fabric:

Het optionele eerste argument geeft aan welke kant van de tekenreeks moet worden bijsnijden:

  • LEADING verwijdert tekens die zijn opgegeven aan het begin van een tekenreeks.

  • TRAILING verwijdert tekens die zijn opgegeven aan het einde van een tekenreeks.

  • BOTH (standaardpositiegedrag) verwijdert tekens die zijn opgegeven aan het begin en einde van een tekenreeks.

karakters

Een letterlijke, variabele of functie-aanroep van een niet-LOB-tekentype (nvarchar, varchar, nchar of teken) met tekens die moeten worden verwijderd. nvarchar(max) en varchar(max) typen zijn niet toegestaan.

string

Een expressie van elk tekentype (nvarchar, varchar, nchar of char) waarin tekens moeten worden verwijderd.

Retourtypen

Retourneert een tekenexpressie met een type tekenreeksargument waarbij het spatieteken char(32) of andere opgegeven tekens van beide zijden worden verwijderd. Retourneert NULL als invoertekenreeks is NULL.

Opmerkingen

TRIM De functie verwijdert standaard het spatieteken van zowel het begin als het einde van de tekenreeks. Dit gedrag is gelijk aan LTRIM(RTRIM(@string)).

Als u de optionele of TRAILINGBOTH positionele LEADINGargumenten in SQL Server 2022 (16.x) wilt inschakelen, moet u het compatibiliteitsniveau 160 van de database inschakelen voor de database waarmee u verbinding maakt bij het uitvoeren van query's.

  • Met optioneel positioneel LEADING argument is het gedrag gelijk aan LTRIM(@string, characters).
  • Met optioneel positioneel TRAILING argument is het gedrag gelijk aan RTRIM(@string, characters).

Voorbeelden

Eén. Het spatieteken van beide zijden van de tekenreeks verwijderen

In het volgende voorbeeld worden spaties verwijderd uit voor en na het woord test.

SELECT TRIM( '     test    ') AS Result;

Hier is het resultatenoverzicht.

test

B. Opgegeven tekens van beide zijden van de tekenreeks verwijderen

In het volgende voorbeeld ziet u een lijst met mogelijke tekens die uit een tekenreeks moeten worden verwijderd.

SELECT TRIM( '.,! ' FROM '     #     test    .') AS Result;

Hier is het resultatenoverzicht.

#     test

In dit voorbeeld zijn alleen de afsluitende punt en spaties van voor # en na het woord test verwijderd. De andere tekens zijn genegeerd omdat ze niet in de tekenreeks bestonden.

C. Opgegeven tekens verwijderen uit het begin van een tekenreeks

Belangrijk

U moet uw databasecompatibiliteitsniveau instellen om de LEADINGtrefwoorden of BOTHTRAILINGtrefwoorden te 160 kunnen gebruiken.

In het volgende voorbeeld wordt de voorloop . van het begin van de tekenreeks voor het woord testverwijderd.

SELECT TRIM(LEADING '.,! ' FROM  '     .#     test    .') AS Result;

Hier is het resultatenoverzicht.

#     test    .

D. Opgegeven tekens verwijderen uit het einde van een tekenreeks

Belangrijk

U moet uw databasecompatibiliteitsniveau instellen om de LEADINGtrefwoorden of BOTHTRAILINGtrefwoorden te 160 kunnen gebruiken.

In het volgende voorbeeld wordt het volgteken . na het woord testverwijderd van het einde van de tekenreeks.

SELECT TRIM(TRAILING '.,! ' FROM '     .#     test    .') AS Result;

Hier is het resultatenoverzicht.

     .#     test

E. Opgegeven tekens verwijderen uit het begin en einde van een tekenreeks

Belangrijk

U moet uw databasecompatibiliteitsniveau instellen om de LEADINGtrefwoorden of BOTHTRAILINGtrefwoorden te 160 kunnen gebruiken.

In het volgende voorbeeld worden de tekens 123 verwijderd uit het begin en einde van de tekenreeks 123abc123.

SELECT TRIM(BOTH '123' FROM '123abc123') AS Result;

Hier is het resultatenoverzicht.

abc