SQL String Functions (Phần 1) - Viblo
Có thể bạn quan tâm
Ở bài viết này, mình xin được giới thiệu về một số string functions thường gặp trong SQL. Ở mỗi RDBMS (Hệ quản trị cơ sở dữ liệu quan hệ) có thể sẽ sử dụng các string functions khác nhau, ngoài ra cú pháp của các function cũng có thể sẽ khác nhau với mỗi RDBMS cho dù tên chúng có giống nhau.
1. CAST
Hàm CAST trong SQL cho phép chuyển đổi dữ liệu từ kiểu dữ liệu này sang kiểu dữ liệu khác. Ví dụ, chúng ta có thể sử dụng hàm CAST để chuyển đổi dữ liệu dạng số sang dạng chuỗi ký tự.
Syntax
CAST (expression AS [data type])Ví dụ
Ở ví dụ này chúng ta sử dụng bảng StudentScore dưới đây.
| StudentID | First_Name | Score |
|---|---|---|
| 1 | Jenny | 85.2 |
| 2 | Bob | 92.5 |
| 3 | Alice | 90 |
| 4 | James | 120.1 |
- Ví dụ 1:
Kết quả:
First_Name Int_Score Jenny 85 Bob 92 Alice 90 James 120Trong ví dụ 1 này, chúng ta đã sử dụng hàm CAST để chuyển đổi dữ liệu cột Score từ FLOAT sang INTEGER
- Ví dụ 2:
Kết quả:
First_Name Char_Score Jenny 85. Bob 92. Alice 90 James 120Trong ví dụ 2 này, chúng ta đã sử dụng hàm CAST để chuyển đổi dữ liệu cột Score từ FLOAT sang CHAR(3). Do chỉ lấy 3 kí tự đầu tiên, nên nếu có nhiều hơn 3 kí tự, thì những kí tự sau 3 kí tự đầu sẽ bị lược bỏ đi.
2. CONCATENATE
Hàm Concatenate được sử dụng để kết hợp các xâu kí tự với nhau. Mỗi DB lại có cách riêng để tiến hành hàm này:
- My SQL: CONCAT( )
- Oracle: CONCAT( ), ||
- SQL Server: +
Syntax
CONCAT (str1, str2, str3, ...)*Đối với Oracle thì hàm CONCAT( ) chỉ cho phép 2 arguments, tuy nhiên lại có thể kết hợp nhiều hơn 2 chuỗi kí tự với cú pháp '||'
str1 || str2 || str3 ... str1 + str2 + str3 ...Ví dụ
Trong ví dụ này ra sử dụng bảng Geography sau:
| Region_Name | Store_Name |
|---|---|
| East | Boston |
| East | New York |
| West | Los Angeles |
| West | San Diego |
- Ví dụ 2: Sử dụng hàm CONCAT( )
MySQL / Oracle
SELECT CONCAT(Region_Name, Store_Name) FROM Geography WHERE Store_Name = 'Boston';Kết quả:
'EastBoston'- Ví dụ 1: Sử dụng '||'
Oracle:
SELECT Region_Name || ' ' || Store_Name FROM Geography WHERE Store_Name = 'Boston';Kết quả:
'East Boston'- Ví dụ 3: Sử dụng '+'
SQL Server:
SELECT Region_Name + ' ' + Store_Name FROM Geography WHERE Store_Name = 'Boston';Kết quả:
'East Boston'3. SUBSTRING
Hàm Substring được sử dụng để trả về một phần của string đầu vào. Mỗi DB lại có cách riêng để tiến hành hàm này.
- MySQL: SUBSTR( ), SUBSTRING( )
- Oracle: SUBSTR( )
- SQL Server: SUBSTRING( )
Cú pháp
SUBSTR (str, position, [length])Trong đó, position và length đều lại integer. Cú pháp trên có ý nghĩa là lấy ra xâu kí tự có độ dài length tính từ kí tự ở vị trí position trong xâu str.
Trong MySQL thì length là một tham số không bắt buộc, tuy nhiên ở Oracle thì length là bắt buộc.
SUBSTR() có thể được sử dụng trong mệnh đề SELECT, WHERE, và ORDER BY.
Ví dụ
Trong ví dụ này ta sử dụng bảng Geography dưới đây
| Region_Name | Store_Name |
|---|---|
| East | Chicago |
| East | New York |
| West | Los Angeles |
| West | San Diego |
- Ví dụ 1
Kết quả:
SUBSTR (Store_Name, 3) s Angeles- Ví dụ 2
Kết quả:
SUBSTR (Store_Name, 2, 4) an D4.TRIM
Hàm Trim trong SQL được sử dụng để loại bỏ những tiền tố, hậu tố trong string. Trong đó, pattern thường hay được loại bỏ nhất là dấu cách (white space). Với mỗi DB khác nhau hàm này cũng được gọi khác nhau:
- MySQL: TRIM( ), RTRIM( ), LTRIM( )
- Oracle: RTRIM( ), LTRIM( )
- SQL Server: RTRIM( ), LTRIM( )
Cú pháp
- Cú pháp của hàm TRIM
- Cú pháp của hàm LTRIM
LTRIM xoá bỏ hết các dấu cách ở đầu xâu
- Cú pháp của hàm RTRIM
RTRIM xoá bỏ hết các dấu cách ở cuối xâu
Ví dụ
- Ví dụ 1: TRIM function
Kết quả:
'Sample'- Ví dụ 2: LTRIM function
Kết quả:
'Sample '- Ví dụ 3: RTRIM function
Kết quả:
' Sample'5. LENGTH
Hàm Length được sử dụng để trả về độ dài của string. Hàm này có tên khác nhau ở các DB khác nhau:
- MySQL: LENGTH( )
- Oracle: LENGTH( )
- SQL Server: LEN( )
Cú pháp
Length (str)Ví dụ Trong ví dụ này ta sử dụng bảng Geography dưới đây
| Region_Name | Store_Name |
|---|---|
| East | Chicago |
| East | New York |
| West | Los Angeles |
| West | San Diego |
- Ví dụ 1
Kết quả:
Length (Store_Name) 11- Ví dụ 2
Kết quả:
Region_Name Length (Region_Name) East 4 East 4 West 4 West 4References
https://www.1keydata.com/sql/sql-string-functions.html
Từ khóa » Bỏ Dấu Sql
-
[SQLSERVER] Hướng Dẫn Tạo Function Bỏ Dấu Tiếng Việt Unicode
-
Chuyển Tiếng Việt Có Dấu Sang Không Dấu Trong Microsoft SQL Server
-
Loại Bỏ Dấu Tiếng Việt Trong T-SQL | Quyetdo289's Blog
-
[SQLSERVER] Hướng Dẫn Tạo Function Bỏ Dấu Tiếng Việt ... - Code 24h
-
Top 15 Hàm Loại Bỏ Dấu Tiếng Việt Trong Sql
-
Hàm Chuyển Chuỗi Có Dấu (Unicode) Thành Không Dấu Trong Sql
-
Chuyển Tiếng Việt Có Dấu Sang Không Dấu Trong Microsoft SQL Server
-
Chuyển Tiếng Việt Có Dấu Thành Không Dấu - @manhng
-
Loại Bỏ Các Dấu Cách Theo Dõi Và Cập Nhật Trong Các Cột Trong SQL ...
-
Function Convert Tiếng Việt Có Dấu -> Không Dấu - Diễn Đàn Tin Học
-
Hàm RTRIM Trong SQL Server
-
Làm Cách Nào để Xóa Dấu Ngoặc Kép đầu Và Cuối Trong SQL Server?
-
Sửa Các Câu Lệnh SQL để Tinh Chỉnh Kết Quả Truy Vấn
-
Cách Viết điều Kiện Với Giá Trị Có Dấu Tiếng Việt Trong SQL Server ...
-
2 Cách để Loại Bỏ Dấu Cách, Khoảng Trắng Giữa Các Từ, Các Số Trong ô ...
-
Xóa Các Số 0 ở Cuối Thập Phân Trong SQL Server - Wake-up