HÀM SQL
- Lý thuyết: 3 tiết
- Thực hành: 2 tiết
Chương 3. Hàm SQL
3- 1
Hàm SQL
3.1 Tổng quan về hàm SQL
chương trình con thực hiện một chức năng nào đó
trả về chỉ một giá trị
Chương 3. Hàm SQL
3- 2
Hàm SQL
3.1 Tổng quan về hàm SQL
Phân loại
từng dòng dữ liệu: trả về một giá trị trên một dòng
nhóm các dòng dữ liệu: trả về một giá trị trên một nhóm
dòng
Chương 3. Hàm SQL
3- 3
Hàm SQL
3.2 Các hàm trên hàng đơn
kiểu dữ liệu số
kiểu dữ liệu ký tự
kiểu dữ liệu thời gian
Các hàm chuyển đổi kiểu
Chương 3. Hàm SQL
3- 4
Hàm SQL
3.2.1 Các hàm trên kiểu số
Hàm ROUND(n[,m])
làm tròn n đến m chữ số thập phân (mặc định m=0)
m<0 thì làm tròn số bên trái dấu thập phân
Ví dụ
ROUND(4.923,1), kết quả là 4.9
ROUND(4.923,-1), kết quả là 0
ROUND(6.923,-1), kết quả là 10
Chương 3. Hàm SQL
3- 5
Hàm SQL
3.2.1 Các hàm trên kiểu số
Hàm TRUNC(n[,m])
lấy m chữ số tính từ chấm thập phân (m=0).
m<0 thì cắt bỏ m chữ số bên trái dấu thập phân.
Ví dụ
TRUNC (4.923,1), kết quả là 4.9.
TRUNC(4.923), kết quả là 4.
TRUNC(4.923,-1), kết quả là 0
Chương 3. Hàm SQL
3- 6
Hàm SQL
3.2.1 Các hàm trên kiểu số
Hàm CEIL(n)
trả về số nguyên nhỏ nhất lớn hơn hoặc bằng n
Ví dụ
CEIL(4.923), kết quả là 5
Hàm FLOOR(n)
trả về số nguyên lớn nhất nhỏ hơn hoặc bằng n
Ví dụ
FLOOR(4.923), kết quả là 4
Chương 3. Hàm SQL
3- 7
Hàm SQL
3.2.1 Các hàm trên kiểu số
Hàm SQRT(n)
trả về căn bậc 2 của n, với n>=0
Ví dụ
SQRT(16), kết quả là 4
Hàm POWER(m,n)
trả về lũy thừa bậc n của m
Ví dụ
POWER(2,3), kết quả là 8
Chương 3. Hàm SQL
3- 8
Hàm SQL
3.2.1 Các hàm trên kiểu số
Hàm SIGN(n)
Nếu n<0 thì SIGN(n)= -1
Nếu n=0 thì SIGN(n)= 0
Nếu n>0 thì SIGN(n)= 1
Ví dụ
SIGN(1724)=1.
SIGN(0)=0.
SIGN(-1724)=-1.
Chương 3. Hàm SQL
3- 9
Hàm SQL
3.2.1 Các hàm trên kiểu số
Hàm ABS(n)
ABS(127)=127.
ABS(-127)=127.
Hàm MOD(m,n)
trả về phần dư của phép chia m cho n.
Ví dụ
MOD(5,3)=2.
MOD(4,3)=1.
Chương 3. Hàm SQL
3- 10
Hàm SQL
3.2.1 Các hàm trên kiểu số
Một số hàm khác
Hàm SQL
LOG(m,n)
Diễn giải
Cho logarit cơ số m của n.
SIN(n)
COS(n)
TAN(n)
Trả về sin của n (n tính bằng radian).
Cho cosin của n (n tính bằng radian).
Trả về tang của n (n tính bằng radian).
Chương 3. Hàm SQL
3- 11
Hàm SQL
3.2.2 Các hàm trên kiểu ký tự
Hàm CONCAT(char1, char2)
kết hợp của 2 chuỗi ký tự char1 và char2
Ví dụ
CONCAT(‘SQL’, ‘ORACLE’), kết quả là SQLORACLE.
Hàm INITCAP(char)
chuỗi với ký tự đầu các từ là ký tự hoa.
Ví dụ
INITCAP(oracle), kết quả là Oracle
Chương 3. Hàm SQL
3- 12
Hàm SQL
3.2.3 Các hàm trên kiểu ký tự
Hàm LOWER(char)
chuỗi ký tự viết thường
Ví dụ
LOWER(‘ORACLE’), kết quả là oracle.
Hàm UPPER(char)
chuỗi ký tự viết hoa.
Ví dụ
UPPER(oracle), kết quả là ORACLE
Chương 3. Hàm SQL
3- 13
Hàm SQL
3.2.3 Các hàm trên kiểu ký tự
Hàm REPLACE(char, search [,replace])
Thay chuỗi search có trong char bằng chuỗi replace
Ví dụ
REPLACE(‘SALESMAN’, ‘MAN’, ’ ’);
Kết quả là SALES
Hàm ASCII(char)
ký tự ASCII của byte đầu tiên của chuỗi char.
Ví dụ
ASCII(‘TOI’); kết quả là 84
Chương 3. Hàm SQL
3- 14
Hàm SQL
3.2.3 Các hàm trên kiểu ký tự
Hàm SUBSTR(char, m [,n])
chuỗi con lấy từ vị trí m về bên phải n ký tự,
nếu không chỉ định n thì lấy cho đến cuối chuỗi
Ví dụ
SUBSTR(‘ORACLE’,2,4); kết quả là RACL.
SUBSTR(‘ORACLE’,2); kết quả là RACLE.
Chương 3. Hàm SQL
3- 15
Hàm SQL
3.2.3 Các hàm trên kiểu ký tự
Hàm INSTR(char1, char2 [,n[,m]])
Tìm vị trí char2 trong char1 từ vị trí n, lần xuất hiện thứ m
Ví dụ
INSTR(‘ACCOUNTING’,'A'); kết quả là 1.
Hàm LENGTH(char)
chiều dài của chuỗi char
Ví dụ
LENGTH(‘SQL COURSE’), kết quả là 10.
Chương 3. Hàm SQL
3- 16
Hàm SQL
3.2.3 Các hàm trên kiểu thời gian
Hàm MONTHS_BETWEEN(d1, d2)
số tháng giữa ngày d1 và d2
Ví dụ
MONTHS_BETWEEN('01-01-2000','01-05-2000');
quả 5.
kết
Hàm ADD_MONTHS(d, n)
ngày d sau khi thêm n tháng
Ví dụ
ADD_MONTHS('01-05-2000’, 3); kết quả là 01-08-2000
Chương 3. Hàm SQL
3- 17
Hàm SQL
3.2.3 Các hàm trên kiểu thời gian
Hàm NEXT_DAY(d, char)
ngày tiếp theo ngày d có thứ chỉ bởi char
Ví dụ
NEXT_DAY(‘17-11-2000’,’Friday’); kết quả là 24-112000.
Hàm LAST_DAY(d)
ngày cuối cùng trong tháng chỉ bởi d.
Ví dụ
LAST_DAY(‘17-11-2000’); kết quả là 30
Chương 3. Hàm SQL
3- 18
Hàm SQL
3.2.3 Các hàm trên kiểu thời gian
Hàm SQL
Diễn giải
ROUND(date1)
Trả về ngày date1 tại thời điểm giữa trưa
12:00 AM
ROUND(date1,’Month’)
Nếu date1 nằm trong nửa tháng đầu trả về
ngày đầu tiên của tháng, ngược lại sẽ trả về
ngày đầu tiên của tháng sau.
ROUND(date1,’Year’)
Nếu date1 nằm trong nửa năm đầu trả về
ngày đầu tiên của tháng, ngược lại sẽ trả về
ngày đầu tiên của năm sau.
TRUNC(date1, ’Month’)
Trả về ngày đầu tiên của tháng chứa date1
TRUNC(date1, ’Year’)
Trả về ngày đầu tiên của năm chứa date1
Chương 3. Hàm SQL
3- 19
Hàm SQL
3.2.4 Các hàm chuyển đổi kiểu
Hàm TO_CHAR(number|date, ‘fmt’)
Chuyển kiểu số và ngày về kiểu ký tự theo định dạng fmt
Ví dụ
TO_CHAR(‘17-11-2000’,’DD/MM’); kết quả là 17/11.
TO_CHAR(‘17-11-2005’,’MM/YY’); kết quả là 11/05.
Hàm TO_NUMBER(char)
Chuyển chuỗi ký tự có nội dung số sang số
TO_NUMBER(‘12345’); kết quả là 12345.
Chương 3. Hàm SQL
3- 20
- Xem thêm -