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
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
()