Ở các phần kiến thức trước, chúng ta đã cùng tìm hiểu nhóm lệnh DDL trong tập các nhóm lệnh ở SQL:
- Nhóm định nghĩa cấu trúc dữ liệu (DDL).
- Nhóm lệnh thao tác dữ liệu (DML).
- Nhóm lệnh phân quyền sử dụng dữ liệu (DCL).
- Nhóm lệnh thao tác với transaction (TCL).
Bài hôm nay chúng ta tiếp tục tìm hiểu nhóm lệnh thao tác dữ liệu (DML).
Nội dung
1. Vai trò của câu lệnh DML trong SQL
Với DDL thì nhóm lệnh này sẽ giúp người dùng định nghĩa các cấu trúc dữ liệu. Nhưng với DML thì giúp chúng ta thao tác với DB để truy xuất hoặc cập nhật dữ liệu từ ứng dụng/hệ thống bên trên.
[Database] DML 1 (Part 1)
[Database] DML 1 (Part 2)
2. Hướng dẫn sử dụng các câu lệnh phổ biến ở DML
2.1. Câu lệnh INSERT
Sử dụng để thêm mới record đến table.
Cú pháp
INSERT INTO table_name (column1, column2, column3, ...)
VALUES (value1, value2, value3, ...);
Ví dụ
Ở bài DDL, mình đã tạo ra table doctor, giờ mình sẽ thêm dữ liệu:
INSERT INTO doctor (`first_name`, `middle_name`, `last_name`, date_of_birth, qualification, specialization_id)
VALUES
('Nguyễn', 'Mạnh', 'An', '1985-01-04', 6, 2);
2.2. Câu lệnh UPDATE
Sử dụng để cập nhật giá trị của một hoặc nhiều cột
Cú pháp
UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition;
Ví dụ
UPDATE doctor
SET qualification = 10
WHERE doctor_id = 5;
Mình đang thực hiện cập nhật lại số năm kinh nghiệm của bác sĩ có doctor_id là 5.
Nếu câu lệnh trên không có điều kiện WHERE thì nó sẽ thực hiện cập nhật toàn bộ các record ở table doctor.
2.3. Câu lệnh DELETE
Dùng để xoá một hoặc nhiều record ở table.
Cú pháp
DELETE FROM table_name
WHERE condition;
Ví dụ
DELETE FROM doctor
WHERE doctor_id = 5;
Mình đang thực hiện xoá bác sĩ có doctor_id là 5.
Nếu câu lệnh trên không có điều kiện WHERE thì nó cũng sẽ xoá toàn bộ các record ở table.
2.4. Câu lệnh SELECT
Là câu lệnh luôn được sử dụng ở SQL, giúp cho việc truy xuất dữ liệu theo nhiều cách khác nhau.
Cú pháp
SELECT column_name(s)
FROM table_name
WHERE condition
Ví dụ
SELECT last_name
FROM doctor;
Câu lệnh trên giúp lấy ra phần tên (last_name) của toàn bộ bác sĩ.
SELECT *
FROM doctor
WHERE last_name = "An";
Còn nếu các bạn muốn lấy toàn bộ thông tin thì cần sử dụng câu lệnh SELECT *
Ngoài ra, câu lệnh SELECT còn được kết hợp với các từ khoá khác để tuỳ biến trong việc lấy dữ liệu, như là:
SELECT DISTINCT last_name
FROM doctor;
Với các bác sĩ trùng tên, thì câu lệnh trên chỉ lấy ra một giá trị duy nhất.
Khi muốn giới hạn số record lấy ra, thì kết hợp SELECT và LIMIT:
SELECT *
FROM doctor
LIMIT 3;
Nó sẽ lấy ra 3 bác sĩ đầu tiên, ở các DBMS khác thì cú pháp LIMIT sẽ thay đổi, như là: TOP, FETCH, ROWNUM.
Kết luận
Trên đây là tập các câu lệnh ở DML thường xuyên được sử dụng khi thao tác với dữ liệu, nếu nắm rõ sẽ giúp các bạn xử lý dữ liệu dễ dàng hơn. Còn với câu lệnh SELECT, thì còn rất nhiều kiến thức để nghiên cứu, các bạn tiếp tục theo dõi ở các bài sau để hiểu hơn về câu lệnh SELECT nhé.
0 Lời bình