Hàm SUBSTRING trong SQL
Hàm SUBSTRING() trả về một chuỗi con của chuỗi được xử lý.
Cú pháp sử dụng hàm SUBSTRING
Hàm này có những cú pháp sử dụng khác nhau cho từng hệ cơ sở dữ liệu.
MYSQL:
SUBSTR(column_name, start_position, length) FROM table_name
hoặc:
SUBSTRING(column_name, start_position, length) FROM table_name
Oracle:
SUBSTR(column_name, start_position, length) FROM table_name
SQL Server:
SUBSTRING(column_name, start_position, length) FROM table_name
Tham số | Mô tả |
column_name | Tham số bắt buộc. trường được chọn để thực hiện việc lấy chuỗi con. |
start | Tham số bắt buộc. Chỉ rõ ra vị trí bắt đầu của chuỗi con ở trong chuỗi cha. |
length | Tham số tùy chọn. Là số ký tự được trả về (chiều dài của chuỗi con). Nếu tham số này bị bỏ qua thì hàm SUBSTRING() sẽ trả về toàn bộ ký tự được tính bắt đầu từ vị trí “start”.
Chú ý: với SQL Server thì đây là tham số bắt buộc. |
Ví dụ cách sử dụng hàm SUBSTRING trong SQL
Xét bảng dữ liệu “Persons”:
ID | LastName | FirstName | Address | City |
1 | Phan | Hai | 13 Hung Vuong | Lang Son |
2 | Luong | Bong | 52 Thanh Xuan | Ha Noi |
3 | Phan | Quan | 34 Van Vi | Lang Son |
Giờ nếu ta muốn lấy ký tự đầu tiên của các chuỗi trong cột “FirstName”, ta có thể dùng lệnh sau:
SELECT LastName,SUBSTR(FirstName, 1, 1) AS FirstCharacter FROM Persons
Kết quả trả về sẽ như sau:
LastName | FirstCharacter |
Phan | H |
Luong | B |
Phan | Q |
Trong ví dụ sau bạn sẽ học cách để lấy được hai ký tự cuối cùng của các chuỗi trong cột “FirstName”. Cú pháp lệnh cần dùng là:
SELECT LastName,SUBSTR(FirstName, -2, 2) AS LastCharacters FROM Persons
Kết quả thu được sẽ như sau:
LastName | LastCharacters |
Phan | ai |
Luong | ng |
Phan | an |
Chú ý: Trong câu lệnh ở trên “-2” có nghĩa là vị trí thứ hai tính từ vị trí cuối của chuỗi.