CĂN BẢN
NÂNG CAO
CÁC CHỦ ĐỀ
BÀI MỚI NHẤT
MỚI CẬP NHẬT

Các toán tử trong SQLite

Trong bài này chúng ta sẽ tìm hiểu các toán tử thường gặp trong SQLite.

1. Toán tử trong SQLite là gì?

Toán tử là một từ dành riêng hoặc một ký tự được sử dụng chủ yếu trong mệnh đề WHERE của câu lệnh SQLite để thực hiện các thao tác, chẳng hạn như so sánh và các phép toán số học.

banquyen png
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

Các toán tử được sử dụng để xác định các điều kiện trong một câu lệnh SQLite và để phục vụ như các liên từ cho nhiều điều kiện trong một câu lệnh.

  • Toán tử số học 
  • Toán tử so sánh 
  • Toán tử logic 
  • Toán tử bitwise

2. Toán tử số học trong SQLite.

Giả sử biến a giữ giá trị là 10 và biến b giữ giá trị là 20, các toán tử số học trong  SQLite sẽ được sử dụng như sau

Toán tử Mô tả Ví dụ
+ Phép cộng a + b = 30
Phép trừ a - b = -10
Phép nhân c * b = 200
/ Phép chia b / a = 2
% Phép chia lấy phần dư b % a = 0

3. Toán tử so sánh trong SQLite

Giả sử biến a giữ giá trị là 10 và biến b giữ giá trị là 20, các toán tử so sánh trong SQLite sẽ được sử dụng như sau:

Toán tử Mô tả Ví dụ
== Kiểm tra xem các 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 đúng. (a == b) không đúng.
= Kiểm tra xem các 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 đúng. (a = b) không đúng.
!= Kiểm tra xem các 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 sẽ trở thành đúng. (a != b) là đúng.
<> Kiểm tra xem các 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 sẽ trở thành đúng. (a <> b) là đúng.
> Kiểm tra xem các 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 đúng. (a > b) không đúng
< Kiểm tra nếu các giá trị của toán hạng bên trái nhỏ hơn giá trị của toán hạng bên phải, nếu có thì điều kiện trở thành đúng. (a < b) là đúng.
>= Kiểm tra xem giá trị của toán hạng bên trái lớn hơn hoặc bằng giá trị của toán hạng bên phải, nếu có thì điều kiện trở thành đúng. (a >= b) không đúng.
<= Kiểm tra xem giá trị của toán hạng bên trái nhỏ hơn hoặc bằng giá trị của toán hạng bên phải, nếu có thì điều kiện trở thành đúng. (a <= b) là đúng.
!< Kiểm tra xem giá trị của toán hạng bên trái không nhỏ hơn giá trị của toán hạng bên phải, nếu có thì điều kiện trở thành đúng. (a !< b) là sai.
!> Kiểm tra xem giá trị của toán hạng bên trái không 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 đúng. (a !> b) là đúng.

4. Toán tử logic trong SQLite

Dưới đây là danh sách tất cả các toán tử logic có sẵn trong SQLite.

Toán tử Mô tả
AND Toán tử AND cho phép tồn tại nhiều điều kiện trong mệnh đề WHERE của câu lệnh SQL.
BETWEEN Toán tử BETWEEN được sử dụng để tìm kiếm các giá trị nằm trong một tập hợp các giá trị, được cung cấp giá trị nhỏ nhất và giá trị lớn nhất.
EXISTS Toán tử EXISTS được sử dụng để tìm kiếm sự có mặt của một hàng trong một bảng đã cho thỏa mãn điều kiện nhất định.
IN Toán tử IN được sử dụng để so sánh một giá trị với một danh sách các giá trị hằng đã được xác định.
NOT IN Phủ định của toán tử IN mà được sử dụng để so sánh một giá trị với một danh sách các giá trị hằng mà đã được xác định
LIKE Toán tử LIKE được sử dụng để so sánh một giá trị với các giá trị tương tự bằng các toán tử ký tự đại diện (wildcard).
GLOB Toán tử GLOB được sử dụng để so sánh một giá trị với các giá trị tương tự bằng các toán tử ký tự đại diện (wildcard). Ngoài ra, GLOB là phân biệt hoa thường, không giống như LIKE.
NOT Toán tử NOT đảo ngược ý nghĩa của toán tử logic được sử dụng. Ví dụ. NOT EXISTS, NOT BETWEEN, NOT IN, vv Đây là toán tử phủ định.
OR Toán tử OR được sử dụng để kết hợp nhiều điều kiện trong mệnh đề WHERE của câu lệnh SQL.
IS NULL Toán tử NULL được sử dụng để so sánh một giá trị với giá trị NULL.
IS Toán tử IS hoạt động giống như toán tử =
IS NOT Toán tử IS NOT hoạt động giống như toán tử !=
|| Thêm hai chuỗi khác nhau và tạo một chuỗi mới.
UNIQUE Toán tử UNIQUE tìm kiếm mọi hàng của một bảng được chỉ định để tìm tính duy nhất (không trùng lặp).

5. Toán tử Bitwise trong SQLite

Toán tử bitwise hoạt động trên bit và thực hiện thao tác từng bit. Sau đây là bảng giá trị chân lý cho &|.

p q p & q p | q
0 0 0 0
0 1 0 1
1 1 1 1
1 1 0 1

Giả sử nếu A = 60; và B = 13, sau đó ở định dạng nhị phân, chúng sẽ như sau:

A = 0011 1100 

B = 0000 1101

----------------- 

A&B = 0000 1100 

A|B = 0011 1101 

~A = 1100 0011

Các toán tử Bitwise được hỗ trợ bởi ngôn ngữ SQLite được liệt kê trong bảng sau. Giả sử biến A giữ giá trị là 60 và biến B giữ giá trị là 13. Có ví dụ sau:

sqlite> .mode line
sqlite> select 60 | 13;
60 | 13 = 61

sqlite> select 60 & 13;
60 & 13 = 12

sqlite> select 60 ^ 13;
10 * 20 = 200

sqlite> select  (~60);
(~60) = -61

sqlite>  select  (60 << 2);
(60 << 2) = 240

sqlite> select  (60 >> 2);
(60 >> 2) = 15
Toán tử Mô tả Ví dụ
& Toán tử nhị phân AND sao chép một bit vào kết quả, nếu nó tồn tại trong cả hai toán hạng. (A & B) = 0000 1100 = 12
| Toán tử nhị phân OR sao chép một bit, nếu nó tồn tại trong một toán hạng. (A | B) = 0011 1101 = 61
~ Toán tử đảo bit là toán tử một ngôi. Đảo bít 1 thành 0 và bit 0 thành 1. (~ A) = 1100 0011 = -61
>> Toán tử dịch bit trái. Giá trị toán hạng bên trái được di chuyển sang trái theo số bit được chỉ định bởi toán hạng bên phải. A << 2 = 1111 0000 = 240
<< Toán tử dịch bit phải. Giá trị toán hạng bên trái được di chuyển sang phải theo số bit được chỉ định bởi toán hạng bên phải. A >> 2 = 0000 1111 = 15

Cùng chuyên mục:

Các hàm hữu ích trong SQLite

Các hàm hữu ích trong SQLite

SQLite có nhiều hàm dựng sẵn để thực hiện xử lý trên dữ liệu chuỗi…

Date & Time trong SQLite

Date & Time trong SQLite

SQLite hỗ trợ năm hàm ngày và giờ như date(timestring, modifiers...), time(timestring, modifiers...), datetime(timestring, modifiers...),…

VACUUM trong SQLite

VACUUM trong SQLite

Lệnh VACUUM trong SQLite làm sạch cơ sở dữ liệu chính bằng cách sao chép…

EXPLAIN trong SQLite

EXPLAIN trong SQLite

Câu lệnh SQLite có thể được bắt đầu bằng từ khóa "EXPLAIN" hoặc bằng cụm…

SQL Injection trong SQLite

SQL Injection trong SQLite

Nếu bạn nhận user input thông qua một Webpage và chèn nó vào trong một…

Tăng tự động AUTOINCREMENT trong SQLite

Tăng tự động AUTOINCREMENT trong SQLite

AUTOINCREMENT trong SQLite là một từ khóa được sử dụng để tự động tăng giá…

Subquery trong SQLite

Subquery trong SQLite

Subquery hoặc Inner query hoặc Nested query là một truy vấn bên trong một truy…

Transaction trong SQLite

Transaction trong SQLite

Một transaction là một đơn vị công việc được thực hiện đối với một cơ…

Tìm hiểu View trong SQLite

Tìm hiểu View trong SQLite

Một view không có gì khác hơn một câu lệnh SQLite được lưu trữ trong…

Lệnh TRUNCATE TABLE trong SQLite

Lệnh TRUNCATE TABLE trong SQLite

Thật không may, không có lệnh TRUNCATE TABLE trong SQLite nhưng bạn có thể sử…

Lệnh ALTER TABLE trong SQLite

Lệnh ALTER TABLE trong SQLite

Lệnh ALTER TABLE trong SQLite dùng để sửa đổi một bảng hiện có mà không…

Mệnh đề INDEXED BY trong SQLite

Mệnh đề INDEXED BY trong SQLite

Mệnh đề "INDEXED BY index-name" chỉ định rằng index-name phải được sử dụng để tìm…

Index trong SQLite

Index trong SQLite

Index là bảng tra cứu đặc biệt mà database search engine có thể sử dụng…

Tìm hiểu Trigger trong SQLite

Tìm hiểu Trigger trong SQLite

Trigger trong SQLite là các hàm callback, mà tự động được thực hiện/gọi (performed/invoked) khi…

Cú pháp ALIAS trong SQLite

Cú pháp ALIAS trong SQLite

Bạn có thể đổi tên tạm thời một bảng hoặc một cột bằng cách đặt…

Toán tử UNION trong SQLite

Toán tử UNION trong SQLite

Toán tử UNION trong SQLite được sử dụng để kết hợp các kết quả của…

Lệnh JOIN trong SQLite

Lệnh JOIN trong SQLite

Lệnh JOIN trong SQLite được sử dụng để kết hợp các bản ghi từ hai…

Các ràng buộc Constraint trong SQLite

Các ràng buộc Constraint trong SQLite

Các ràng buộc (Constraints) là các quy tắc được thi hành trên một cột dữ…

Lệnh PRAGMA trong SQLite

Lệnh PRAGMA trong SQLite

Lệnh PRAGMA trong SQLite là một lệnh đặc biệt được sử dụng để kiểm soát…

Từ khóa DISTINCT trong SQLite

Từ khóa DISTINCT trong SQLite

Từ khóa DISTINCT trong SQLite được sử dụng cùng với câu lệnh SELECT để loại…

Top