Học lập trình MS SQL

Một số hàm xử lý chuỗi trong sql

  • by mr.T 14/05/2020
  • 7,849

Tổng hợp một số hàm xử lý chuỗi quan trọng trong Ms SQL. Bất kỳ ngôn ngữ lập trình nào, chuỗi luôn là đối tượng quan trọng bậc nhất, hiểu rõ các hàm xử lý chuỗi sẽ giúp các bạn dễ dàng hơn trong quá trình lập trình.

Dưới đây là tổng hợp một số hàm quan trọng dùng để xử lý chuỗi dữ liệu trong MS SQL


Hàm ASCII()

Hàm này trả về vị trí của ký tự trong bảng mã ASCII, cùng xem hướng dẫn cách dùng hàm ASCII trong SQL:

Cú pháp:

ASCII ('ký tự');

Ví dụ:

SELECT ASCII('a'); -> giá trị trả về = 97
SELECT ASCII('b'); -> giá trị trả về = 98
SELECT ASCII('c'); -> giá trị trả về = 99
SELECT ASCII('A'); ->giá trị trả về = 65
SELECT ASCII('B'); -> giá trị trả về = 66
SELECT ASCII('C'); -> giá trị trả về = 67
SELECT ASCII('1'); -> giá trị trả về = 49
SELECT ASCII('2'); ->giá trị trả về = 50
SELECT ASCII('3'); -> giá trị trả về = 51
SELECT ASCII('4'); -> giá trị trả về = 52
SELECT ASCII('5'); -> giá trị trả về = 53

Nếu giá trị trong dấu nháy đơn không phải là một ký tự mà là một chuỗi, hệ thống sẽ trả về vị trí trong bảng mã ASCII của ký tự đầu tiên trong chuối đó.

Ví dụ:

SELECT ASCII('Anh Trung Trịnh');

Kết quả trả về sẽ là 65 (vị trí của ký tự 'A')


Hàm CHAR()

Hàm Char trong SQL có tác dụng ngược lại với hàm ASCII, kết quả trả về sẽ là ký tự tương ứng với vị trí trong bảng mã ASCII.

Cú pháp:

CHAR('vị_trí');

Ví dụ:

SELECT CHAR('97');

Kết quả trả về sẽ là a (Vị trí trong bảng mã ASCII của 'a' là 97)


Hàm SPACE()

Hàm này trả về khoảng trống (khoảng trắng) trong câu lệnh SQL

Cú pháp:

SPACE ( số khoảng trắng cần );

Ví dụ:

SELECT ('Trung') + SPACE(0) + ('Trinh');

Giá trị trả về = TrungTrinh : Không có khoảng trắng nào

SELECT ('Trung') + SPACE(1) + ('Trịnh');

Giá trị trả về = Trung Trịnh : Có một khoảng trắng


Hàm CHARINDEX()

Trả về vị trí được tìm thấy của một chuỗi trong chuỗi cha

Cú pháp

CHARINDEX ( string1, string2, [vị trí bắt đầu tìm] );

Ví dụ:

SELECT CHARINDEX('COM', 'Hoc SQL tai Trung Trinh .COM');

Kết quả trả về là 26 (vị trí bắt đầu tự hiểu là 0)

SELECT CHARINDEX('COM', 'Hoc SQL tai Trung Trinh .COM', 20);

Kết quả trả về là 26 (vị trí bắt đầu tìm là 20, tức chỉ trong từ chuỗi: "inh .COM", nhưng vị trí trả về vẫn là vị trí trong cả chuỗi cha

SELECT CHARINDEX('COM', 'Hoc SQL tai Trung Trinh .COM', 27);

Kết quả trả về là 0, vì vị trí bắt đầu tìm là 27, tức đoạn chuỗi tìm là "OM", không có chứa "COM"


Hàm REPLACE()

Hàm thay thế chuỗi

Cú pháp

REPLACE ( 'chuỗi cha' , 'chuỗi cần thay thế' , 'chuỗi thay thế' );

Ví vụ

SELECT REPLACE('Đây là website trungtrinh.net' , 'net', 'com');

Kết quả sẽ là: Đây là website trungtrinh.com (thay thế net = com)


Hàm UPPER() và LOWER()

Hàm UPPER() chuyển đổi chữ in thường thành chữ in hoa, hàm LOWER() thì ngược lại, chuyển chữ in hoa thành chữ in thường.

Cú pháp

UPPER( 'string1');
LOWER( 'string1');

Ví dụ:

SELECT UPPER('Trungtrinh.com - Website chia sẻ');

Kết quả trả về: 'TRUNGTRINH.COM - WEBSITE CHIA SẺ'

SELECT LOWER('Một số hàm XỬ LÝ CHUỖI trong Sql');

Kết quả trả về: 'một số hàm xử lý chuỗi trong sql'


Các hàm LEFT(), RIGHT(), SUBSTRING()

Hàm cắt chuỗi bên trái, phải và ở giữa

Cú pháp

LEFT( 'string1', số kí tự);
RIGHT( 'string1', số kí tự);
SUBSTRING ( 'string1', vị trí, số kí tự);

Ví dụ:

SELECT LEFT('Trang web Trungtrinh.com',5);

Trả về kết quả: 'Trang'

SELECT RIGHT('Trang web Trungtrinh.com',3);

Trả về kết quả: 'com'

SELECT SUBSTRING ('Trang web Trungtrinh.com',10,5);

Trả về kết quả: 'Trung'


Hàm LTRIM() và RTRIM()

Loại bỏ khoảng trắng bên trái, bên phải của chuỗi

Cú pháp

LTRIM( 'string1');
RTRIM ( 'string1');

Ví dụ:

SELECT RTRIM(' Hướng dẫn học SQL từ website Trung Trịnh .Com ');

Kết quả trả về: 'Hướng dẫn học SQL từ website Trung Trịnh .Com '

SELECT RTRIM(' Hướng dẫn học SQL từ website Trung Trịnh .Com ');

Kết quả trả về: ' Hướng dẫn học SQL từ website Trung Trịnh .Com'


Hàm LEN()

Trả về số ký tự trong chuỗi

Cú pháp

LEN( 'string');

Ví dụ:

SELECT LEN('Website TrungTrinh.com co moi thu');

Kết quả trả về: 33


Hàm REVERSE

Hàm có chức năng đảo chuỗi

Cú pháp

REVERSE( 'string');

Ví dụ:

SELECT REVERSE('Khong con mua thu');

Kết quả: 'uht aum noc gnohK'


Hàm STUFF

Với cú pháp hàm STUFF bên dưới có kết quả trả về là một chuỗi mới sau khi đã hủy bỏ một số ký tự hiện có và thêm vào một chuỗi con khác tại vị trí vừa hủy bỏ

Cú pháp

STUFF ( 'string', vị trí,  chiều dài,  chuỗi con);

vị trí: là một số nguyên chỉ định vị trí bắt đầu hủy bỏ các ký tự bên trong chuỗi nguồn.

chiều dài: là một số nguyên chỉ định bao nhiêu ký tự sẽ bị hủy bỏ trong chuỗi nguồn đếm từ bên trái vị trí chỉ định.

Ví dụ:

SELECT STUFF ('123456789',4,3,'ABDCEF');

Cho ra kết quả: '123ABCDEF789': Cắt bỏ từ vị trí số 4, chiều dài là 3, tức là '456' bị cắt bỏ và thay '456' thành 'ABDCEF'


Trên đây Trung trịnh .com tổng hợp những hàm xử lý chuỗi trong lập trình SQL. Nếu còn hàm nào quan trọng mà TrungTrinh.COM quên đưa vào, hãy comment bên dưới để mọi người cùng tham khảo nhé.


Bạn đang xem bài viết tại chuyên mục MS SQL của Website Trung Trịnh. Nếu thấy bổ ích, hãy bấm like và share để chia sẻ cho mọi người cùng xem nhé!

BÌNH LUẬN

BÀI VIẾT KHÁC