Professional Documents
Culture Documents
SQL Basic Cheatsheet
SQL Basic Cheatsheet
SAMPLE DATA
1 PARIS 1 2243000
2 BERLIN 2 3460000
CRUD: CREATE
TẠO MỚI 1 DATABASE, VỚI CÂU LỆNH “CREATE DATABASE”
Cú Pháp: CREATE DATABASE TÊN DATABSE SẼ TẠO;
Ví Dụ: CREATE DATABASE MUAHANG;
Cú Pháp 1: SELECT column1, column2, ... Hiển Thị Các Cột Dữ Liệu Muốn Lấy
FROM table_name; Từ 1 Table
Ví Dụ 1: SELECT CustomerName, City Hiển Thị Cột Dữ Liệu “CustomerName” và Cột “City”
FROM Customers; Từ Table có tên là “Customer”
NOTE:
- Điều kiện truy vấn có thể là các toán tử so sánh như >, >=, <, <=, <>, =
- Các từ khóa bổ sung cho điều kiện truy vấn gồm Like, Between, In, Is Not Null
CRUD: READ
LIKE: SELECT * FROM Customers ‘a%’, Tìm giá trị bắt đầu bằng “a”
WHERE name LIKE 'a%'; ‘%a’, Tìm giá trị kết thúc bằng “a”
BETWEEN: SELECT * FROM Customers Hiển Thị Tất Cả Cột Dữ Liệu Từ Table
WHERE soluong BETWEEN 10 AND 20; “Customer” nhưng chỉ hiển thị với điều kiện
là cột số lượng có giá trị nằm giữa 10 và 20.
IN: SELECT * FROM Customers Hiển Thị Tất Cả Cột Dữ Liệu Từ Table “Customer”
WHERE name IN (‘Kelvin’, ‘Lan’, ‘Hong’); nhưng chỉ hiển thị với điều kiện là tên khách hàng là
1 trong 3 tên sau: “Kelvin”, “Lan”, “Hong”.
IS NOT NULL: SELECT * FROM Customers Hiển Thị Tất Cả Cột Dữ Liệu Từ Table “Customer”
WHERE vip IS NOT NULL nhưng chỉ với khách hàng có giá trị trong cột VIP
(KHÔNG BỊ TRỐNG), tức truy vấn các khách VIP.
CRUD: READ
TRUY VẤN TỪ NHIỀU CỘT TRONG 1 TABLE, VỚI CÂU LỆNH “SELECT”.
NHƯNG NHÓM KẾT QUẢ, LOẠI DỮ LIỆU TRÙNG LẮP VỚI “GROUP BY”
Cú Pháp:
HAVING điều kiện nhóm
Cú Pháp: SELECT colum1, colum2,… FROM TÊN TABLE
Ví Dụ:
GROUP BY colum1, colum2,…;
HAVING country_id = 4
Ví Dụ: SELECT * FROM CUSTOMER Hiển Thị Tất Cả Cột Dữ Liệu Từ Table “Customer”
ORDER BY name DESC; nhưng sắp xếp theo cột “name” và giảm dần Z -> Z
NOTE:
- ASC là sắp xếp tăng dần (với số là 1,2,3,4,5… với text là theo A -> Z)
- DESC là sắp xếp giảm dần (với số là 5,4,3,2,1 với text là theo Z -> A)
- TỪ KHÓA “ORDER BY” nằm sau “WHERE điều kiện truy vấn”
CRUD: UPDATE
ĐỂ UPDATE LẠI CẤU TRÚC CỦA 1 TABLE TRONG DATABASE
Cú Pháp 1: ALTER TABLE table_name
Cập Nhật Thêm Cột Vào Table
ADD column_name datatype;
NOTE:
- Nếu bạn bỏ WHERE, toàn bộ dòng dữ liệu sẽ update theo giá trị mới ở phần SET.
CRUD: DELETE
XÓA TOÀN BỘ DATABASE
Cú Pháp: DROP DATABASE TÊN DATABASE; Xóa 1 Database trong Server
XÓA TOÀN BỘ DỮ LIỆU TRONG 1 TABLE (TABLE VẪN CÒN TỒN TẠI)
Cú Pháp: TRUNCATE TABLE TÊN TABLE; Xóa Dữ Liệu Trong 1 Table
CRUD: DELETE
ĐỂ XÓA DỮ LIỆU 1 DÒNG / MỘT SỐ DÒNG TRONG 1 TABLE
Cú Pháp: DELETE FROM TÊN TABLE Xóa Dữ Liệu Trong 1 Table
WHERE điều kiện truy vấn; Theo Điều Kiện Where
NOTE:
- Nếu bạn bỏ WHERE, toàn bộ dòng dữ liệu trong Table sẽ bị xóa.
JOIN – NỐI BẢNG
Một trong nhưng lợi ích chính của SQL là khả năng kết hợp dữ liệu từ hai hay
nhiều bảng lại với nhau. Việc kết hợp các bảng lại như vậy gọi là JOIN, SQL
sẽ tạo ra một bảng tạm thời chứa dữ liệu kết quả từ JOIN.
Để có thể nối, 2 hoặc nhiều bảng phải có mối quan hệ (relationship) với nhau
theo các hình thức 1-1, 1-∞, ∞- ∞
BẢNG 1 BẢNG 2
JOIN – NỐI BẢNG: INNER JOIN
Inner join trong SQL là một cách để kết hợp dữ liệu từ hai hoặc nhiều bảng
trong cơ sở dữ liệu quan hệ. Nó chỉ trả về những bản ghi (record) có giá trị
khớp trong cả hai bảng. Nói cách khác, inner join chỉ trả về các bản ghi
(record) có giá trị của các cột được chỉ định trong cả hai bảng khớp với nhau.
BẢNG 1
BẢNG 1
BẢNG 1
BẢNG 1
BẢNG ĐƯỢC JOIN
BẢNG 2
JOIN – NỐI BẢNG: FULL JOIN
Cú Pháp: SELECT column_name(s) FROM table1
FULL OUTER JOIN table2
ON table1.column_name = table2.column_name WHERE điều kiện truy vấn;
NOTE: cheatsheet này chỉ giới thiệu demo 1 số hàm thông dụng nhất
STANDARD FUNCTION: TEXT FUNCTION
HÀM LEFT Dùng để tách chuỗi, tạo 1 chuỗi mới
Cú Pháp: LEFT(string, number_of_chars) với số ký tự tách ra từ bên trái chuỗi.
STANDARD FUNCTION: TEXT FUNCTION
HÀM RIGHT Dùng để tách chuỗi, tạo 1 chuỗi mới
Cú Pháp: RIGHT(string, number_of_chars) với số ký tự tách ra từ bên phải chuỗi.
HÀM CURRENT_DATE()
Cú Pháp: CURRENT_DATE() Dùng để trả về ngày hiện tại, trả theo định dạng ‘yyyy-mm-dd’
Dùng MIN & MAX để lấy giá trị nhỏ nhất và lớn nhất
- Min(Tên Cột)
- Max(Tên Cột)
Ví Dụ: SELECT MIN(Price) FROM Products;
STANDARD FUNCTION: CONDITIONAL FUNCTION
HÀM IF() trả về giá trị dựa trên điều kiện LUẬN LÝ.
- Trả về 1 giá trị là “A” NẾU điều kiện là ĐÚNG (TRUE).
- Trả về 1 giá trị là “B” NẾU điều kiện là SAI (FALSE).
Cú Pháp: IF(điều kiện, giá trị trả về nếu đúng, giá trị trả về nếu sai)
Ví Dụ: SELECT id, name, IF(name = ‘Paris’,‘Nước Pháp’, ‘Không Phải Pháp’)
FROM CITY;
ID NAME IF (…)
1 Paris Nước Pháp
101 Marseille Không Phải Pháp
102 Lyon Không Phải Pháp
… … …