Thứ Tư, 26 tháng 10, 2022

PL/SQL - Toán tử (operator)

Trong chương này, chúng ta sẽ thảo luận về các toán tử trong PL/SQL. Một toán tử là một ký hiệu yêu cầu trình biên dịch thực hiện các thao tác toán học hoặc logic cụ thể. Ngôn ngữ PL/SQL có nhiều toán tử cài sẵn và cung cấp các loại toán tử sau:

  • Toán tử số học

  • Toán tử quan hệ

  • Toán tử so sánh

  • Toán tử logic

  • Toán tử chuỗi

Ở đây, chúng ta sẽ lần lượt hiểu các toán tử số học, quan hệ, so sánh và logic. Các toán tử chuỗi sẽ được thảo luận trong chương sau - PL/SQL - Chuỗi .

Toán tử số học

Bảng sau hiển thị tất cả các toán tử số học được PL/SQL hỗ trợ. Giả sử biến A giữ 10 và biến B giữ 5, sau đó -

Hiển thị các ví dụ

Toán tử

Sự mô tả

Thí dụ

+

Cộng hai toán hạng

A + B sẽ cho 15

-

Trừ toán hạng thứ hai với toán hạng đầu tiên

A - B sẽ cho 5

*

Nhân cả hai toán hạng

A * B sẽ cho 50

/

Chia tử số cho tử số

A / B sẽ cho 2

**

Toán tử lũy thừa, nâng một toán hạng lên lũy thừa của toán hạng khác

A ** B sẽ cho 100000

Toán tử quan hệ

Toán tử quan hệ so sánh hai biểu thức hoặc giá trị và trả về kết quả Boolean. Bảng sau đây cho thấy tất cả các toán tử quan hệ được hỗ trợ bởi PL/SQL. Giả sử biến A giữ 10 và biến B giữ 20, khi đó -

Hiển thị các ví dụ

Toán tử

Sự mô tả

Thí dụ

=

Kiểm tra xem giá trị của hai toán hạng có bằng nhau hay không, nếu có thì điều kiện trở thành true.

(A = B) không đúng.

! =

<>

~ =

Kiểm tra xem giá trị của hai toán hạng có bằng nhau hay không, nếu các giá trị không bằng nhau thì điều kiện trở thành true.

(A! = B) là đúng.

>

Kiểm tra xem giá trị của toán hạng bên trái có lớn hơn giá trị của toán hạng bên phải hay không, nếu có thì điều kiện trở thành true.

(A> B) là không đúng.

<

Kiểm tra xem giá trị của toán hạng bên trái có nhỏ hơn giá trị của toán hạng bên phải hay không, nếu có thì điều kiện trở thành true.

(A <B) là đúng.

> =

Kiểm tra xem giá trị của toán hạng bên trái có lớn hơn hoặc bằng giá trị của toán hạng bên phải hay không, nếu có thì điều kiện trở thành true.

(A> = B) là không đúng.

<=

Kiểm tra xem giá trị của toán hạng bên trái có nhỏ hơn hoặc bằng giá trị của toán hạng bên phải hay không, nếu có thì điều kiện trở thành true.

(A <= B) là đúng

Toán tử so sánh

Các toán tử so sánh được sử dụng để so sánh một biểu thức này với một biểu thức khác. Kết quả luôn là TRUE, FALSE hoặc NULL .

Hiển thị các ví dụ

Toán tử

Sự mô tả

Thí dụ

LIKE

Toán tử LIKE so sánh một ký tự, chuỗi hoặc giá trị CLOB với một mẫu và trả về TRUE nếu giá trị khớp với mẫu và FALSE nếu không.

Nếu 'Zara Ali' như 'Z% A_i' trả về giá trị Boolean true, trong khi 'Nuha Ali' như 'Z% A_i' trả về giá trị Boolean false.

BETWEEN

Toán tử GIỮA kiểm tra xem một giá trị có nằm trong một phạm vi xác định hay không. x GIỮA a VÀ b nghĩa là x> = a và x <= b.

Nếu x = 10 thì x từ 5 đến 20 trả về true, x từ 5 đến 10 trả về true, nhưng x từ 11 đến 20 trả về false.

IN

Kiểm tra toán tử IN thiết lập tư cách thành viên. x IN (tập hợp) có nghĩa là x bằng với bất kỳ thành viên nào của tập hợp.

Nếu x = 'm' thì x in ('a', 'b', 'c') trả về Boolean false nhưng x in ('m', 'n', 'o') trả về Boolean true.

IS NULL

Toán tử IS NULL trả về giá trị BOOLEAN TRUE nếu toán hạng của nó là NULL hoặc FALSE nếu không phải là NULL. Các phép so sánh liên quan đến giá trị NULL luôn mang lại giá trị NULL.

Nếu x = 'm', thì 'x là null' trả về Boolean false.

Toán tử logic

Bảng sau đây cho thấy các toán tử lôgic được hỗ trợ bởi PL/SQL. Tất cả các toán tử này hoạt động trên toán hạng Boolean và tạo ra kết quả Boolean. Giả sử biến A là true và biến B là false, sau đó -

Hiển thị các ví dụ

Toán tử

Sự mô tả

Các ví dụ

and

Được gọi là toán tử logic AND. Nếu cả hai toán hạng đều đúng thì điều kiện trở thành đúng.

(A và B) là sai.

or

Được gọi là Toán tử HOẶC logic. Nếu bất kỳ toán hạng nào trong hai toán hạng là true thì điều kiện trở thành true.

(A hoặc B) là đúng.

not

Được gọi là Toán tử NOT logic. Được sử dụng để đảo ngược trạng thái logic của toán hạng của nó. Nếu một điều kiện là đúng thì toán tử logic NOT sẽ làm cho nó sai.

không (A và B) là đúng.

Ưu tiên toán tử PL/SQL

Mức độ ưu tiên của toán tử xác định nhóm các thuật ngữ trong một biểu thức. Điều này ảnh hưởng đến cách một biểu thức được đánh giá. Một số toán tử nhất định có quyền ưu tiên cao hơn những toán tử khác; ví dụ, toán tử nhân có mức độ ưu tiên cao hơn toán tử cộng.

Ví dụ: x = 7 + 3 * 2 ; ở đây, x được gán 13 , không phải 20 vì toán tử * có mức độ ưu tiên cao hơn +, vì vậy đầu tiên nó được nhân với 3 * 2 và sau đó cộng thành 7 .

Ở đây, các toán tử có mức độ ưu tiên cao nhất xuất hiện ở đầu bảng, những toán tử có mức độ ưu tiên thấp nhất xuất hiện ở cuối bảng. Trong một biểu thức, các toán tử có mức độ ưu tiên cao hơn sẽ được đánh giá đầu tiên.

Thứ tự ưu tiên của các toán tử như sau: =, <,>, <=,> =, <>,! =, ~ =, ^ =, IS NULL, LIKE, BETWEEN, IN.

Hiển thị các ví dụ

Toán tử

Hoạt động

**

lũy thừa

+, -

danh tính, phủ định

*, /

nhân, chia

+, -, ||

cộng, trừ, nối

sự so sánh


NOT

phủ định logic

AND

kết hợp

OR

bao gồm


=============================
* KHOÁ HỌC ORACLE DATABASE A-Z ENTERPRISE trực tiếp từ tôi giúp bạn bước đầu trở thành những chuyên gia DBA, đủ kinh nghiệm đi thi chứng chỉ OA/OCP, đặc biệt là rất nhiều kinh nghiệm, bí kíp thực chiến trên các hệ thống Core tại VN chỉ sau 1 khoá học.
* CÁCH ĐĂNG KÝ: Gõ (.) hoặc để lại số điện thoại hoặc inbox https://m.me/tranvanbinh.vn hoặc Hotline/Zalo 090.29.12.888
* Chi tiết tham khảo:
https://bit.ly/oaz_w
=============================
KẾT NỐI VỚI CHUYÊN GIA TRẦN VĂN BÌNH:
📧 Mail: binhoracle@gmail.com
☎️ Mobile: 0902912888
⚡️ Skype: tranbinh48ca
👨 Facebook: https://www.facebook.com/BinhOracleMaster
👨 Inbox Messenger: https://m.me/101036604657441 (profile)
👨 Fanpage: https://www.facebook.com/tranvanbinh.vn
👨 Inbox Fanpage: https://m.me/tranvanbinh.vn
👨👩 Group FB: https://www.facebook.com/groups/DBAVietNam
👨 Website: https://www.tranvanbinh.vn
👨 Blogger: https://tranvanbinhmaster.blogspot.com
🎬 Youtube: http://bit.ly/ytb_binhoraclemaster
👨 Tiktok: https://www.tiktok.com/@binhoraclemaster?lang=vi
👨 Linkin: https://www.linkedin.com/in/binhoracle
👨 Twitter: https://twitter.com/binhoracle
👨 Địa chỉ: Tòa nhà Sun Square - 21 Lê Đức Thọ - Phường Mỹ Đình 1 - Quận Nam Từ Liêm - TP.Hà Nội

=============================
PL/SQL, học oracle database, Tự học Oracle, Tài liệu Oracle 12c tiếng Việt, Hướng dẫn sử dụng Oracle Database, Oracle SQL cơ bản, Oracle SQL là gì, Khóa học Oracle Hà Nội, Học chứng chỉ Oracle ở đầu, Khóa học Oracle online,khóa học pl/sql, học dba, học dba ở việt nam, khóa học dba, khóa học dba sql, tài liệu học dba oracle, Khóa học Oracle online, học oracle sql, học oracle ở đâu tphcm, học oracle bắt đầu từ đâu, học oracle ở hà nội, oracle database tutorial, oracle database 12c, oracle database là gì, oracle database 11g, oracle download, oracle database 19c, oracle dba tutorial, oracle tunning, sql tunning , oracle 12c, oracle multitenant, Container Databases (CDB), Pluggable Databases (PDB), oracle cloud, oracle security, oracle fga, audit_trail, oracle dataguard, oracle goldengate, mview, oracle exadata, oracle oca, oracle ocp, oracle ocm , oracle weblogic, middleware, hoc solaris, hoc linux, hoc aix, unix, securecrt, xshell, mobaxterm, putty

ĐỌC NHIỀU

Trần Văn Bình - Oracle Database Master