Trong SQL Server 2017, bạn có thể sử dụng cú pháp này, nhưng không phải trong các phiên bản trước:
SELECT Name = TRIM(Name) FROM dbo.Customer;
Trong SQL Server 2017, bạn có thể sử dụng cú pháp này, nhưng không phải trong các phiên bản trước:
SELECT Name = TRIM(Name) FROM dbo.Customer;
Câu trả lời:
SELECT LTRIM(RTRIM(Names)) AS Names FROM Customer
Để cắt bên phải, sử dụng:
SELECT RTRIM(Names) FROM Customer
Để cắt bên trái, sử dụng:
SELECT LTRIM(Names) FROM Customer
Để cắt cả hai bên, sử dụng:
SELECT LTRIM(RTRIM(Names)) FROM Customer
Tôi cho rằng đây là một bài tập chà dữ liệu một lần. Sau khi hoàn thành, đảm bảo bạn thêm các ràng buộc cơ sở dữ liệu để ngăn chặn dữ liệu xấu trong tương lai, vd
ALTER TABLE Customer ADD
CONSTRAINT customer_names__whitespace
CHECK (
Names NOT LIKE ' %'
AND Names NOT LIKE '% '
AND Names NOT LIKE '% %'
);
Cũng xem xét việc không cho phép các ký tự khác (tab, trả lại vận chuyển, nguồn cấp dữ liệu, v.v.) có thể gây ra sự cố.
Nó cũng có thể là một thời điểm tốt để chia những tên vào family_name
, first_name
, vv :)
trong máy chủ sql 2008 r2 với biểu thức ssis chúng ta có chức năng cắt.
Dịch vụ tích hợp máy chủ SQL (SSIS) là một thành phần của phần mềm cơ sở dữ liệu Microsoft SQL Server có thể được sử dụng để thực hiện một loạt các tác vụ di chuyển dữ liệu.
bạn có thể tìm thấy mô tả đầy đủ về liên kết này
http://msdn.microsoft.com/en-us/l Library / ms139947.aspx
nhưng chức năng này có một số hạn chế trong chính nó cũng được đề cập bởi msd trên trang đó. nhưng đây là trong máy chủ sql 2008 r2
TRIM(" New York ") .The return result is "New York".
Phiên bản mở rộng của "REPLACE":
REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(RTRIM(LTRIM(REPLACE("Put in your Field name", ' ',' '))),'''',''), CHAR(9), ''), CHAR(10), ''), CHAR(13), ''), CHAR(160), '') [CorrValue]