In SQL Server 2017 können Sie diese Syntax verwenden, jedoch nicht in früheren Versionen:
SELECT Name = TRIM(Name) FROM dbo.Customer;
In SQL Server 2017 können Sie diese Syntax verwenden, jedoch nicht in früheren Versionen:
SELECT Name = TRIM(Name) FROM dbo.Customer;
Antworten:
SELECT LTRIM(RTRIM(Names)) AS Names FROM Customer
Verwenden Sie zum Trimmen auf der rechten Seite:
SELECT RTRIM(Names) FROM Customer
Verwenden Sie zum Trimmen auf der linken Seite:
SELECT LTRIM(Names) FROM Customer
Verwenden Sie zum Trimmen auf beiden Seiten:
SELECT LTRIM(RTRIM(Names)) FROM Customer
Ich gehe davon aus, dass dies eine einmalige Datenbereinigungsübung ist. Stellen Sie anschließend sicher, dass Sie Datenbankeinschränkungen hinzufügen, um in Zukunft fehlerhafte Daten zu vermeiden, z
ALTER TABLE Customer ADD
CONSTRAINT customer_names__whitespace
CHECK (
Names NOT LIKE ' %'
AND Names NOT LIKE '% '
AND Names NOT LIKE '% %'
);
Ziehen Sie auch in Betracht, andere Zeichen (Tabulator, Wagenrücklauf, Zeilenvorschub usw.) nicht zuzulassen, die Probleme verursachen können.
Es kann auch eine gute Zeit sein , diese Namen in aufzuspalten family_name
, first_name
etc :)
SELECT LTRIM(RTRIM(Replace(Replace(Replace(name,' ',' '),CHAR(13), ' '),char(10), ' ')))
from author
In SQL Server 2008 R2 mit SSI-Ausdruck haben wir die Trimmfunktion.
SQL Server Integration Services (SSIS) ist eine Komponente der Microsoft SQL Server-Datenbanksoftware, mit der eine Vielzahl von Datenmigrationsaufgaben ausgeführt werden können.
Die vollständige Beschreibung finden Sie unter diesem Link
http://msdn.microsoft.com/en-us/library/ms139947.aspx
Diese Funktion weist jedoch einige Einschränkungen auf, die auch von msdn auf dieser Seite erwähnt werden. Dies ist jedoch in SQL Server 2008 R2
TRIM(" New York ") .The return result is "New York".
Erweiterte Version von "REPLACE":
REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(RTRIM(LTRIM(REPLACE("Put in your Field name", ' ',' '))),'''',''), CHAR(9), ''), CHAR(10), ''), CHAR(13), ''), CHAR(160), '') [CorrValue]