Überflüssige Leerzeichen in Microsoft SQL Server abschneiden

Der Dotnet-Doktor  –  3 Kommentare
Anzeige

Mit SQL Server 2017 führt Microsoft endlich die Trim()-Funktion ein, mit der man Leerzeichen am Beginn und am Ende einer Zeichenkette entfernen kann.

Während Microsoft Access Trim() schon lange beherrscht, konnte der SQL Server bisher nur das vordere Abschneiden mit LTrim() und das hintere mit RTrim() getrennt. Zur Bereinigung eines Datensatz wie

Anzeige
insert into kunde (ID, Kundenname) values (123, '    heise online ')

mussten Entwickler also bisher schreiben:

select LTRIM(RTRIM(kundenname)) from kunde where ID = 123

Wem das zu umständlich war, der konnte eine eigene Funktion anlegen:

Create Schema ITV
GO
CREATE FUNCTION ITV.TRIM(@string VARCHAR(MAX))
RETURNS VARCHAR(MAX)
BEGIN
RETURN LTRIM(RTRIM(@string))
END
GO

Damit konnte man schreiben:

select ITV.TRIM(kundenname) from kunde where ID = 123

In Microsoft SQL Server 2017 (v14.1709, erschienen am 2. Oktober.2017) ist Trim() nun endlich eingebaut:

select TRIM(kundenname) from kunde where ID = 123
Anzeige