SQL hay viết tắt của Structured Query Language, là ngôn ngữ truy vấn có cấu trúc giúp bạn truy xuất và cập nhật dữ liệu ở DB. Với mỗi RDBMS thì SQL sẽ thay đổi nhỏ ở một số cú pháp, nhưng nhìn chung điều đó là không nhiều. Bài viết sau mình sẽ hướng dẫn các bạn sử dụng SQL trên hệ quản trị MySQL.
Nội dung
1. Kiểu dữ liệu
Với mỗi table, sẽ có nhiều column, mỗi column được xem là thuộc tính của đối tượng. Và mỗi column sẽ có mỗi kiểu dữ liệu khác nhau, thường các kiểu mà chúng ta hay gặp:
- Kí tự, chuỗi (String)
- Số (Numeric)
- Ngày và giờ (Date and Time)
Với mỗi loại, mình có liệt kê các kiểu thường xuyên được dùng để xây dựng DB, hãy cùng xem các bảng bên dưới.
1.1. Kiểu String
Kiểu dữ liệu | Mô tả |
CHAR (size) | Độ dài là cố định. Phạm vi 0 đến 255. Mặc định là 1 |
VARCHAR (size) | Độ dài thay đổi được. Phạm vi 0 đến 65,535. |
TINYTEXT | Độ dài thay đổi được, tối đa là 255 kí tự |
TEXT | Độ dài thay đổi được. Phạm vi 0 đến 65,535. |
MEDIUMTEXT | Độ dài tối đa đến 16,777,215. |
LONGTEXT | Độ dài tối đa đến 4,294,967,295. |
Ngoài ra, nếu cần lưu trữ giá trị nhị phân thì có thể sử dụng kiểu BLOB.
1.2. Kiểu Numeric
Kiểu dữ liệu | Mô tả |
BIT | Kiểu số có kích thước nhỏ nhất. Giá trị mặc định là 1. |
BOOL (BOOLEAN) | Kiểu TRUE/FALSE |
TINYINT, SMALLINT, INT, BIGINT | Các kiểu số nguyên |
FLOAT, DOUBLE, DECIMAL | Các kiểu số thực (số thập phân) |
1.3. Kiểu Date
Kiểu dữ liệu | Mô tả |
DATE | Kiểu ngày, định dạng là: yyyy-mm-dd |
DATETIME | Kiểu ngày và giờ, định dạng là: yyyy-mm-dd hh:mm:ss |
TIMESTAMP | Tương tự như kiểu DATETIME, nhưng lưu dữ liệu theo chuẩn UTC. |
TIME | Kiểu giờ, định dạng là: hh:mm:ss |
YEAR | Kiểu năm, lưu trữ 4 chữ số. |
[Database] SQL (Part 1)
[Database] SQL (Part 2)
2. Toán tử so sánh
Được sử dụng so sánh các dữ liệu với nhau, từ đó mới lọc kết quả cuối cùng của câu lệnh SQL.
Các toán tử so sánh cũng gần giống như các phép toán học.
Toán tử | Chú thích |
= | So sánh bằng |
> | So sánh lớn hơn |
< | So sánh nhỏ hơn |
>= | So sánh lớn hơn hoặc bằng |
<= | So sánh nhỏ hơn hoặc bằng |
<> | Có thể dùng !=, đây là phép so sánh khác |
3. Toán tử logic
Được sử dụng để phối hợp các biểu thức điều kiện với nhau
Toán tử | Ý nghĩa |
AND | Trả về TRUE nếu 2 biểu thức cùng trả về TRUE. |
IN | Trả về TRUE nếu chỉ cần có biểu thức trong danh sách điều kiện là TRUE |
NOT | Phủ định biểu thức trả về kiểu BOOLEAN. |
OR | Trả về TRUE nếu một trong hai biểu thức là TRUE |
LIKE | Kiểm tra tính gần đúng của dữ liệu. |
BETWEEN | Trả về TRUE, nếu giá trị thuộc trong đoạn |
ALL | Trả về TRUE nếu tất cả tập so sánh là TRUE. |
ANY | Trả về TRUE nếu có bất kỳ giá trị ở tập so sánh là TRUE. |
EXISTS | Trả về TRUE nếu truy vấn trả về ít nhất một dòng dữ liệu |
SOME | Trả về TRUE nếu vài giá trị ở tập so sánh là TRUE. |
4. NULL
Là một giá trị đặc biệt, nó thể hiện 3 ý nghĩa sau:
- Thể hiện giá trị chưa được xác định rõ ràng.
- Giá trị ở đây không phải là rỗng hay 0.
- Không thể dùng các toán tử so sánh thông thường với NULL, mà cần sử dụng toán tử IS. Như là IS NULL hay IS NOT NULL.
Kết luận
Hôm nay mình chỉ giới thiệu lại phần SQL đến đây thôi, có thể thấy rằng SQL cũng có nhiều khái niệm tương tự như bên ngôn ngữ lập trình. Nhưng đây chỉ là ngôn ngữ để thao tác với các dữ liệu ở DB, tức là chỉ thao tác với tầng dưới cùng của một hệ thống, được xem như là phương tiện để một ứng dụng giao tiếp được với DB trong hệ thống.
0 Lời bình