Bài giảng thực hành cơ SỞ DỮ liệU



tải về 4.27 Mb.
Chế độ xem pdf
trang24/43
Chuyển đổi dữ liệu13.11.2023
Kích4.27 Mb.
#55638
1   ...   20   21   22   23   24   25   26   27   ...   43
TH CSDL 2015Sep
NEW.Bài giảng CSDL sau nghiệm thu-2023, 6. Đề cương Cơ sở dữ liệu- sau nghiệm thu. 23.02.2022, Chuong01-CSDL
Bài thực hành số 5 
Các hàm xử lý của MySQL 
Nội dung chính 
 Trong bài này,
chúng ta sẽ làm quen với một số hàm (functions) 
cơ bản
:

Hàm xử lý xâu kí tự: Substring, Concat, Replace
 
- Hàm điều kiện If 
- Hàm LAST_INSERT_ID 
- Hàm xử lý thời gian: DATEDIFF, ADDDATE, EXTRACT 
1. Hàm xử lý chuỗi SUBSTRING 
Hàm Substring cho phép trích xuất một chuỗi con từ một chuỗi khác, bắt đầu tại vị trí cụ 
thể và với một độ dài nhất định.
Sau đây minh họa các hình thức sử dụng khác nhau của 
hàm này. 
SUBSTRING(str,pos); 
SUBSTRING(str FROM pos); 
Kết quả của câu lệnh ở trên trả về một chuỗi con từ một chuỗi str bắt đầu từ vị trí pos 
SUBSTRING(str,pos,len); 
SUBSTRING(str FROM pos FOR len); 
Hai câu lệnh ở trên trả về một chuỗi con từ một chuỗi str, bắt đầu tại vị trí pos và chuỗi 
con trả về chỉ có len ký tự.
Lưu ý rằng FROM là từ khoá cú pháp SQL chuẩn.
Chúng ta 
hãy xem xét một số ví dụ sau” 
SELECT substring('MySQL Substring',7);
Trả về: Substring 
SELECT substring('MySQL Substring' FROM 7);
Trả về: Substring 
SELECT substring('MySQL Substring',7,3);
Trả về: Sub 
SELECT substring('MySQL Substring' FROM 7 FOR 3);


53 
Trả về: Sub 
cũng có thể sử dụng giá trị âm cho tham số pos.
Nếu sử dụng giá trị âm cho tham số 
pos, sự bắt đầu của chuỗi con được tính từ cuối của chuỗi, ví dụ 
SELECT
substring('MySQL Substring',-9); 
Trả về: Substring
Đôi khi thấy đoạn mã sử dụng
substr () 
thay vì
hàm
substring () 
.
Substr 
là từ đồng nghĩa 
với
substring, 
vì vậy nó có tác dụng tương tự. 
2. Hàm CONCAT 
Hàm Concat được sử dụng để nối hai hoặc nhiều chuỗi. Nếu các đối số là số, chúng sẽ 
được chuyển đổi thành chuỗi trước khi nối. Nếu bất kỳ đối số trong danh sách đối số là 
NULL, hàm concat sẽ trả về NULL. 
CONCAT(str1,str2,...) 
Ví dụ: Để hiển thị tên đầy đủ đầu tiên của địa chỉ liên lạc của khách hàng chúng tôi sử 
dụng hàm concat để nối các tên đầu tiên và tên cuối cùng và dấu phân cách giữa 
chúng. Dưới đây là truy vấn: 
SELECT CONCAT(contactLastname,', ',contactFirstname)
fullname 
FROM customers 


54 
MySQL cũng hỗ trợ hàm concat_ws cho phép chúng ta nối hai hay nhiều hơn hai chuỗi 
với một dấu phân cách được xác định trước.
Cú pháp của hàm concat_ws là: 
CONCAT_WS(seperator,str1,str2,...) 
Tham số đầu tiên là dấu phân cách do định nghĩa và sau đó là những chuỗi muốn 
nối. Kết quả trả về là một chuỗi đã được ghép nối,với dấu phân cách giữa mỗi thành phần 
ghép nối. Có thể đạt được kết quả tương tự trong ví dụ trên bằng cách sử dụng concat_ws 
thay vì hàm concat.
SELECT CONCAT_WS('; ',contactLastname,contactFirstname) 
fullname 
FROM customers 


55 
Dưới đây là một ví dụ khác của việc sử dụng concat_ws để có được định dạng địa chỉ của 
khách hàng.
SELECT CONCAT_WS(char(10),
CONCAT_WS(' ',contactLastname,contactFirstname),
addressLine1, addressLine2, 
CONCAT_WS(' ',postalCode,city), country, 
CONCAT_WS(char(10),'')) AS Customer_Address 
FROM customers 


56 

tải về 4.27 Mb.

Chia sẻ với bạn bè của bạn:
1   ...   20   21   22   23   24   25   26   27   ...   43




Cơ sở dữ liệu được bảo vệ bởi bản quyền ©hocday.com 2024
được sử dụng cho việc quản lý

    Quê hương