Bạn đang học SQL và muốn hiểu rõ hơn về các toán tử? Bài viết này sẽ là hướng dẫn toàn diện và dễ hiểu nhất về các loại toán tử trong SQL, từ cơ bản đến nâng cao.
Mục lục[ẩn]
Trong lệnh SQL, các ký tự hoặc từ được sử dụng riêng cho mệnh đề WHERE để thực hiện các thao tác được gọi là toán tử. Các thao tác này rất đa dạng, đó có thể là phép so sánh hay những phép toán toán số học. Mục đích sử dụng toán tử là để chỉ định điều kiện nào đó trong câu lệnh SQL và giống như giao của nhiều điều kiện trong cùng một câu lệnh.
Cú pháp của toán tử Unary SQL
Operator SQL_Operand
Cú pháp của toán từ Binary SQL
Operand1 SQL_Operator Operand2
Trong SQL có 4 loại toán tử là:
Ví dụ, chúng ta có biến a lưu giá trị là 10 và biến b lưu giá trị là 20. Vậy bảng toán tử trong SQL sẽ như sau:
Toán tử | Mô tả | Ví dụ |
Cộng (+) | Phép cộng các giá trị 2 bên | a + b, kết quả 30 |
Trừ (-) | Phép trừ sẽ lấy toán hạng bên trái trừ toán hạng bên phải | a – b, kết quả -10 |
Nhân (*) | Lấy giá trị 2 toán hạng nhân lại với nhau | a * b, kết quả 200 |
Chia (/) | Chia lấy phần nguyên | b / a, kết quả 2 |
Chia lấy số dư (%) | Chia lấy phần dư | b % a, kết quả 1 |
Toán tử Bitwise trong SQL là các phép toán thao tác trên các số nhị phân hoặc các chuỗi số tương tự. Những phép toán này được thực hiện trực tiếp bởi bộ xử lý, nhanh chóng và hiệu quả. Hơn nữa, chúng tiết kiệm năng lượng hơn do tối ưu hóa sử dụng tài nguyên hệ thống.
Toán tử | Tên | Mô tả |
---|---|---|
& | AND | Trả về 1 nếu cả hai bit là 1, ngược lại trả về 0. |
| | OR | Trả về 1 nếu ít nhất một trong hai bit là 1, ngược lại trả về 0. |
^ | XOR | Trả về 1 nếu hai bit khác nhau, ngược lại trả về 0. |
~ | NOT | Đảo ngược tất cả các bit: 0 thành 1 và 1 thành 0. |
Mỗi toán tử Bitwise này được sử dụng để thực hiện các phép toán trên dữ liệu nhị phân (binary) trong máy tính, đem lại tính nhanh chóng và hiệu quả trong xử lý dữ liệu.
Để hiểu rõ hơn về các toán tử so sánh trong SQL chúng ta tiếp tục sử dụng ví dụ trên với giá trị a =10, b=20, ta có:
Toán tử | Mô tả | Ví dụ |
= | Kiểm tra 2 toán hạng ở 2 bên dấu bằng có giá trị bằng nhau không. Nếu bằng thì điều kiện là true | (a = b) là false |
!= | Kiểm tra 2 toán hạng ở 2 bên dấu bằng có giá trị bằng nhau không. Nếu không thì điều kiện là true | (a != b) là true |
<> | Kiểm tra 2 toán hạng ở 2 bên dấu bằng có giá trị bằng nhau không. Nếu không thì điều kiện là true | (a <> b) là true |
> | Kiểm tra giá trị của toán hạng bên trái lớn hơn giá trị toán hạng bên phải không, nếu có điều kiện true | (a > b) không true |
< | Kiểm tra giá trị toán hạng bên trái nhỏ hơn giá trị toán hạng bên phải không, nếu có thì điều kiện true | (a < b) là true |
>= | Kiểm tra giá trị toán hạng bên trái lớn hơn hoặc bằng giá trị toán hạng bên phải không, nếu có điều kiện là true | (a >= b) không true |
<= | Kiểm tra giá trị toán hạng bên trái nhỏ hơn hoặc bằng giá trị toán hạng bên phải không, nếu có điều kiện là true | (a <= b) là true |
!< | Kiểm tra giá trị toán hạng bên trái không nhỏ hơn giá trị toán hạng bên phải, nếu có điều kiện là true | (a !< b) là false |
!> | Kiểm tra giá trị toán hạng bên trái không lớn hơn giá trị toán hạng bên phải, nếu có điều kiện là true | (a !> b) là true |
Dưới đây là bảng danh sách các toán tử so sánh trong SQL:
Toán tử | Mô tả |
ALL | So sánh một giá trị với tất cả các giá trị khác trong một tập hợp |
AND | Cho phép trong mệnh đề WHERE của lệnh SQL tồn tại nhiều điều kiện cùng lúc |
ANY | So sánh một giá trị nào đó với bất kỳ giá trị thích hợp nào khác trong danh sách tùy điều kiện |
BETWEEN | Tìm kiếm một giá trị nào đó trong một tập hợp nhiều giá, trong đó đã cho trước giá trị nhỏ nhất và lớn nhất |
EXITS | Tìm sự có mặt của một hàng trong bảng đảm bảo thỏa mãn điều kiện cụ thể nào đó |
IN | So sánh giá trị nào đó với danh sách chuỗi giá trị đã xác định |
LIKE | So sánh giá trị với các giá trị tương tự |
NOT | Đảo ngược ý nghĩa của toán tử logic trong SQL mà nó được sử dụng |
OR | Trong mệnh đề WHERE, OR dùng để nối nhiều điều kiện với nhau |
IS NULL | So sánh một giá trị với giá trị NULL |
UNIQUE | Tìm kiếm đơn nhất cho mọi hàng thuộc bảng (không có bản sao) |
Hiểu rõ về các toán tử SQL là nền tảng quan trọng để bạn có thể viết các truy vấn hiệu quả và chính xác. Bài viết này đã cung cấp cho bạn kiến thức cơ bản và nâng cao về các loại toán tử, cách sử dụng chúng và các ví dụ thực tế.