0
0
Lập trình
Flame Kris
Flame Krisbacodekiller

Bảng Tóm Tắt Các Câu Lệnh MySQL Cần Biết (Kèm Ví Dụ)

Đăng vào 8 giờ trước

• 3 phút đọc

🗄️ Bảng Tóm Tắt Các Câu Lệnh MySQL Cần Biết (Kèm Ví Dụ)

SQL (Structured Query Language) là ngôn ngữ tiêu chuẩn để tương tác với các cơ sở dữ liệu. Nếu bạn đang tìm hiểu về MySQL, đây là hướng dẫn toàn diện chứa tất cả các câu lệnh thiết yếu, giải thích đơn giản và ví dụ thực tế với đầu ra.

Chúng ta sẽ xây dựng từng bước với bảng students và bảng courses để dễ hiểu.


🏗️ Thiết lập: Tạo Bảng

sql Copy
CREATE TABLE students (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(100),
    age INT,
    course VARCHAR(100),
    marks INT
);

CREATE TABLE courses (
    course_id INT AUTO_INCREMENT PRIMARY KEY,
    course_name VARCHAR(100),
    instructor VARCHAR(100)
);

Nhập dữ liệu mẫu:

sql Copy
INSERT INTO students (name, age, course, marks) VALUES
('Alice', 20, 'Computer Science', 85),
('Bob', 22, 'Mathematics', 90),
('Charlie', 21, 'Physics', 75),
('Daisy', 23, 'Computer Science', 95);

INSERT INTO courses (course_name, instructor) VALUES
('Computer Science', 'Dr. Smith'),
('Mathematics', 'Dr. John'),
('Physics', 'Dr. Lee');

✅ Bây giờ hãy cùng khám phá các câu lệnh.


🔹 Các Câu Lệnh SQL Cơ Bản

1. Hiển Thị Tất Cả Các Cơ Sở Dữ Liệu

sql Copy
SHOW DATABASES;

👉 Đầu ra:

Cơ sở dữ liệu
mysql
information_schema
test_db

2. Sử Dụng Một Cơ Sở Dữ Liệu

sql Copy
USE test_db;

3. Hiển Thị Tất Cả Các Bảng

sql Copy
SHOW TABLES;

👉 Đầu ra:

Bảng trong test_db
students
courses

4. Mô Tả Một Bảng

sql Copy
DESCRIBE students;

👉 Đầu ra:

Trường Loại Null Khóa Mặc định Thêm
id int NO PRI NULL auto_increment
name varchar(100) YES NULL
age int YES NULL
course varchar(100) YES NULL
marks int YES NULL

🔹 Lấy Dữ Liệu

5. SELECT – Lấy Dữ Liệu

sql Copy
SELECT * FROM students;

👉 Đầu ra:

id name age course marks
1 Alice 20 Computer Science 85
2 Bob 22 Mathematics 90
3 Charlie 21 Physics 75
4 Daisy 23 Computer Science 95

6. WHERE – Lọc Dữ Liệu

sql Copy
SELECT name, marks FROM students WHERE marks > 80;

👉 Đầu ra:

name marks
Alice 85
Bob 90
Daisy 95

7. ORDER BY – Sắp Xếp

sql Copy
SELECT * FROM students ORDER BY marks DESC;

👉 Đầu ra:

name marks
Daisy 95
Bob 90
Alice 85
Charlie 75

8. LIMIT – Giới Hạn Dòng

sql Copy
SELECT * FROM students LIMIT 2;

👉 Đầu ra:

name age course marks
Alice 20 Computer Science 85
Bob 22 Mathematics 90

9. DISTINCT – Giá Trị Độc Nhất

sql Copy
SELECT DISTINCT course FROM students;

👉 Đầu ra:

course
Computer Science
Mathematics
Physics

🔹 Sửa Đổi Dữ Liệu

10. INSERT – Thêm Dữ Liệu

sql Copy
INSERT INTO students (name, age, course, marks)
VALUES ('Eve', 20, 'Mathematics', 88);

11. UPDATE – Sửa Đổi Dữ Liệu

sql Copy
UPDATE students SET marks = 92 WHERE name = 'Alice';

12. DELETE – Xóa Dữ Liệu

sql Copy
DELETE FROM students WHERE name = 'Charlie';

13. DROP – Xóa Một Bảng

sql Copy
DROP TABLE students;

🔹 Các Câu Lệnh SQL Nâng Cao

14. GROUP BY – Tính Toán Tập Hợp

sql Copy
SELECT course, AVG(marks) AS avg_marks
FROM students
GROUP BY course;

👉 Đầu ra:

course avg_marks
Computer Science 90
Mathematics 89
Physics 75

15. HAVING – Lọc Nhóm

sql Copy
SELECT course, AVG(marks) AS avg_marks
FROM students
GROUP BY course
HAVING avg_marks > 80;

👉 Đầu ra:

course avg_marks
Computer Science 90
Mathematics 89

16. JOIN – Kết Hợp Các Bảng

sql Copy
SELECT s.name, s.course, c.instructor
FROM students s
JOIN courses c ON s.course = c.course_name;

👉 Đầu ra:

name course instructor
Alice Computer Science Dr. Smith
Bob Mathematics Dr. John
Daisy Computer Science Dr. Smith

17. LIKE – Khớp Mẫu

sql Copy
SELECT * FROM students WHERE name LIKE 'A%';

👉 Đầu ra:

id name age course marks
1 Alice 20 Computer Science 85

18. BETWEEN & IN

sql Copy
-- Điểm giữa 80 và 95
SELECT * FROM students WHERE marks BETWEEN 80 AND 95;

-- Sinh viên trong các khóa học cụ thể
SELECT * FROM students WHERE course IN ('Mathematics', 'Physics');

🔹 Giao Dịch

19. START TRANSACTION, COMMIT, ROLLBACK

sql Copy
START TRANSACTION;

UPDATE students SET marks = 100 WHERE name = 'Bob';

ROLLBACK;  -- hoàn tác thay đổi
-- COMMIT; -- xác nhận thay đổi

🔹 Trigger & Stored Procedures

20. DELIMITER + TRIGGER

sql Copy
DELIMITER //

CREATE TRIGGER after_insert_student
AFTER INSERT ON students
FOR EACH ROW
BEGIN
    INSERT INTO courses (course_name, instructor)
    VALUES ('New Course', 'TBD');
END //

DELIMITER ;

21. STORED PROCEDURE

sql Copy
DELIMITER //

CREATE PROCEDURE GetHighScorers()
BEGIN
    SELECT name, marks FROM students WHERE marks > 85;
END //

DELIMITER ;

CALL GetHighScorers();

👉 Đầu ra:

name marks
Alice 92
Bob 90
Daisy 95

🔹 Views & Indexes

22. CREATE VIEW

sql Copy
CREATE VIEW high_scorers AS
SELECT name, course, marks
FROM students
WHERE marks > 85;

SELECT * FROM high_scorers;

👉 Đầu ra:

name course marks
Alice Computer Science 92
Bob Mathematics 90
Daisy Computer Science 95

23. INDEX

sql Copy
CREATE INDEX idx_course ON students(course);

👉 Giúp tăng tốc độ tìm kiếm trên course.


🎯 Kết Luận

Chúng ta đã đề cập đến tất cả các câu lệnh MySQL thiết yếu:

  • ✅ Cơ bản (CREATE, SELECT, WHERE, ORDER, LIMIT, DISTINCT)
  • ✅ Sửa đổi (INSERT, UPDATE, DELETE, DROP)
  • ✅ Nâng cao (GROUP BY, HAVING, JOIN, LIKE, IN, BETWEEN)
  • ✅ Giao dịch (COMMIT, ROLLBACK)
  • ✅ Trigger, Procedures, Views, Indexes

Đây là bảng tóm tắt MySQL hoàn chỉnh 📖. Hãy đánh dấu trang, sao chép và thực hành với dữ liệu thực tế.


✍️ Viết bởi Nivesh Bansal

Gợi ý câu hỏi phỏng vấn
Không có dữ liệu

Không có dữ liệu

Bài viết được đề xuất
Bài viết cùng tác giả

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào