CÁC HÀM XỬ LÝ CHUỖI TRONG SQL

Dưới đây chúng ta sẽ tìm hiểu một số hàm xử lý chuỗi phổ dụng trong SQL Server.Các bạn cần lưu ýrằng các hàm nàychỉ áp dụng đượccho câu lệnh SELECT.

Bạn đang xem: Các hàm xử lý chuỗi trong sql

1. STR()

Hàm STR() trả về một chuỗi số từ một số hoặc một chuỗi số khác là đối số của hàm.

Cú pháp đơn giản:


Cú pháp trên sẽ trả về một chuỗi số có độ chính xác là 0 và dành 10 khoảng độ rộng trường để chứa kết quả. Trong trường hợp kết quả có kích thước lớn hớn 10 thì hàm STR() sẽ trả về 10 ký tự dấu *.

Ví dụ:


Kết quả:

*

Khi bạn đặt số vào trong chuỗi thì kết quả cũng tương tự như trên:


Cú pháp trên sẽ cho phép bạn chủ động đưa ra độ rộng trường và độ chính xác mong muốn cho kết quả trả về.

Lưu ý:

+ Độ_rộng_trường bao gồm dấu (+ hoặc -), dấu chấm thập phân, các ký số và dấu cách.

+ Nếu kết quả có kích thước lớn hơnĐộ_rộng_trường thì hàm STR() sẽ trả về chuỗi gồm Độ_rộng_trường ký tự *.

+ Nếu kết quả có kích thước nhỏ hơnĐộ_rộng_trường thì hàm STR() sẽ trả về chuỗi kết quả và phía trước kết quả là số lượng khoảng trắng (space) tương ứng với độ lệch giữa Độ_rộng_trường và kích thước kết quả.

+ Độ_chính_xác tối đa cho phép đối với kết quả là 16 con số sau dấu chấm thập phân.

Dưới đây là một số ví dụ cho phần lưu ý trên:


SELECT STR(123456,5,1);--sẽ trả về chuỗi '*****'
SELECT STR(123456,6,1);-- → '123456'
SELECT STR(123456,7,1);--→ '123456'
SELECT STR(123456,8,1);-- →'123456.0'
SELECT STR(123456,10,1);-- →' 123456.0'

Kết quả:

*

2. SUBSTRING()

SUBSTRING() dùng để lấy chuỗi con trong một chuỗi.

Cú pháp:


SUBSTRING('Chuỗi', Vị_trí, Số_lượng)

Ví dụ:


SELECT SUBSTRING('wpcyte.com',2,3);--sẽ trả về chuỗi con '1St'

3. LEFT()

Hàm LEFT() dùng để lấy một số ký tự đầu tiên biên trái của một chuỗi.

Cú pháp:


LEFT('Chuỗi',Số_ký_tự)

Ví dụ:


SELECT LEFT('wpcyte.com',2); --sẽ trả về chuỗi 'V1'

4. RIGHT()

RIGHT() dùng để lấy một số ký tự đầu tiên biên phải của một chuỗi.

Cú pháp:


RIGHT('Chuỗi',Số_ký_tự)

Ví dụ:


SELECT RIGHT('wpcyte.com',5); --sẽ trả về chuỗi 'Study'

5. LEN()

Hàm LEN() dùng để lấy kích thước của một chuỗi.

Cú pháp:


LEN('Chuỗi')

Ví dụ:


SELECT LEN('wpcyte.com'); --sẽ trả về số 7

6. LOWER()

Hàm LOWER() dùng để chuyển tất cả các ký tự in hoa trong một chuỗi thành in thường.

Cú pháp:


LOWER('Chuỗi')

Ví dụ:


SELECT LOWER('wpcyte.com');--sẽ trả về: 'wpcyte.com'

7. UPPER()

Hàm UPPER() dùng để chuyển tất cả các ký tự in thường trong một chuỗi thành in hoa.

Cú pháp:


UPPER('Chuỗi')

Ví dụ:


SELECT UPPER('wpcyte.com');--sẽ trả về: 'wpcyte.com'

8. LTRIM()

Hàm LTRIM() dùng để xoá tất cả các ký tự trắng (space) ở đầu chuỗi.

Cú pháp:


LTRIM('Chuỗi')

Ví dụ:


SELECT LTRIM(' wpcyte.com ');--sẽ trả về: 'wpcyte.com '

9. RTRIM()

Hàm RTRIM() dùng để xoá tất cả các ký tự trắng (space) ở cuối chuỗi.

Cú pháp:


RTRIM('Chuỗi')

Ví dụ:


SELECT RTRIM(' wpcyte.com ');-- trả về chuỗi:' wpcyte.com'

10. ASCII()

Hàm ASCII() dùng để lấy vị trí trong bảng mã ASCII của một ký tự.

Xem thêm: Cách Chèn Chữ Trong Photoshop Bằng Layer Style, Cách Viết Text Trong Photoshop

Cú pháp:


ASCII('Ký_tự')

Ví dụ:


SELECT ASCII('A');-- →65

Nếu trong cặp nháy đơn không phải là Ký_tự mà là một chuỗi thì hàm ASCII() sẽ lấy ký tự đầu tiên của chuỗi và trả về vị trí trong bảng mã ASCII của ký tự đó.

Ví dụ:


SELECT ASCII('abc123');-- sẽ trả về số 97 (là vị trí của ký tự 'a')

11. CHAR()

CHAR() có tác dụng ngược với hàm ASCII(), nó dùng để lấy ký tự tương ứng vị trí trong bảng mãASCII.

Cú pháp:


CHAR(Vị_trí)

Ví dụ:


SELECT CHAR(65);-- →'A'

Nếu Vị_trí không có trong bảng mã ASCII thì hàm CHAR() sẽ trả về NULL.

12. STUFF()

STUFF()dùng để chèn một chuỗi vào một phần củachuỗi gốcvà trả về chính chuỗi mới đó. Nó xóa số lượng ký tự xác định bắt đầu từ vị trí chỉ định rồi chèn chuỗi mong muốn vào đó.

Cú pháp:


STUFF('chuỗi_gốc', start, length, 'chuỗi_thêm_vào')

, trong đó:

- chuỗi_gốc: là chuỗimà ta muốn thay đổi, có thể là hằng chuỗi, biến chuỗi hoặc một cột chứa dữ liệu chuỗihoặc nhị phân.

- start: là một số nguyên thể hiện vị trí nơi xảy ra thay đổi, nếu start hay length là số âm thì hàm trả về chuỗi rỗng.

Ví dụ:


PRINT STUFF('abcdef', 2, 3, 'ijklmn');

Câu lệnh trên có nghĩa là thay thế 3 ký tự bắt đầu từ vị trí thứ 2 (tương đương với 'bcd') bằng chuỗi 'ijklmn'.Dưới đây là kết quả:

aijklmnef

13. SUBSTR()

Hàm này dùng cho MySQL có tác dụng lấy chuỗi bắt đầu từ ký tự thứ n.

Cú pháp:


SUBSTR('chuỗi_gốc', n)

, trong đó:

- chuỗi_gốc: là chuỗimà ta muốn thay đổi, có thể là hằng chuỗi, biến chuỗi hoặc một cột chứa dữ liệu chuỗihoặc nhị phân.

- n: là một số nguyên thể hiện vị trí nơi xảy ra thay đổi, nếu start hay length là số âm thì hàm trả về chuỗi rỗng.

Ví dụ:


PRINT SUBSTR('abcdef', 2);

Câu lệnh trên sẽ trả về chuỗi'bcdef'.

14. REVERSE()

Hàm này dùng để đảo ngược chuỗi.

Ví dụ:


PRINT REVERSE('abcdef'); --> In ra kết quả: 'fedcba'

Câu lệnh trên sẽ trả về chuỗi'bcdef'.

15. REPLICATE()

Hàm này có tác dụng lặp chuỗi.

Cú pháp:


REPLICATE('chuỗi', n)

, trong đó:

- chuỗi: là chuỗimà ta muốn lặp, có thể là hằng chuỗi, biến chuỗi hoặc một cột chứa dữ liệu chuỗihoặc nhị phân.

- n: là một số nguyên thể hiện số lần lặp chuỗi, nếu n = 0 thì trả về chuỗi rỗng, nếu n In ra 7

PRINT DATALENGTH(N'123456Â'); --> In ra 14

17. REPLACE()

Hàm này sẽ thay thế phần chuỗi trong mẫu chuỗi bằng chuỗi mới.

Ví dụ:


18. CONCAT()

Hàm này sẽ có tác dụng nối chuỗi, và nối được cả chuỗi và số.

Ví dụ:


SELECT CONCAT('V', 1, 'Study'); --> In ra: wpcyte.com
Đăng ký nhận thông báo về những video mới nhất

« Prev: SQL Server: Hàm xếp hạng (Ranking)


Copied !!!

Social Media