Please enable JavaScript.
Coggle requires JavaScript to display documents.
TRUY VẤN TRONG CƠ SỞ DỮ LIỆU QUAN HỆ - Coggle Diagram
TRUY VẤN TRONG CƠ SỞ DỮ LIỆU QUAN HỆ
KHÁI NIỆM
Cơ sở dữ liệu quan hệ là một hệ thống quản lý cơ sở dữ liệu (DBMS) sử dụng mô hình quan hệ, trong đó dữ liệu được tổ chức dưới dạng các bảng (tables), mỗi bảng bao gồm các hàng (rows) và cột (columns). Mỗi bảng trong cơ sở dữ liệu có thể được liên kết với các bảng khác thông qua các khóa (keys).
Truy vấn (Query) là một yêu cầu lấy thông tin từ cơ sở dữ liệu. Truy vấn có thể được viết bằng ngôn ngữ truy vấn cấu trúc (SQL - Structured Query Language) để thực hiện các thao tác như lựa chọn, chèn, cập nhật, xóa dữ liệu trong cơ sở dữ liệu.
CÁC LOẠI TRUY VẤN
Truy vấn lựa chọn (SELECT Query): Dùng để lấy dữ liệu từ cơ sở dữ liệu
Truy vấn này sẽ lấy tất cả các cột dữ liệu của nhân viên trong bộ phận "Sales".
SELECT * FROM Employees WHERE Department = 'Sales';
Truy vấn cập nhật (UPDATE Query): Dùng để sửa đổi dữ liệu đã tồn tại trong cơ sở dữ liệu. Ví dụ:
UPDATE Employees SET Salary = 55000 WHERE Name = 'John Doe';
Truy vấn chèn (INSERT Query): Dùng để thêm dữ liệu mới vào cơ sở dữ liệu. Ví dụ:
INSERT INTO Employees (Name, Department, Salary)
VALUES ('John Doe', 'Marketing', 50000);
Truy vấn xóa (DELETE Query): Dùng để xóa dữ liệu khỏi cơ sở dữ liệu. Ví dụ:
DELETE FROM Employees WHERE Name = 'John Doe';
Truy vấn kết nối (JOIN Query): Dùng để kết nối các bảng lại với nhau theo một điều kiện chung. Ví dụ
SELECT Employees.Name, Departments.DepartmentName
FROM Employees
INNER JOIN Departments ON Employees.DepartmentID = Departments.DepartmentID;
Cấu trúc của một truy vấn SQL:
WHERE: Xác định điều kiện lọc dữ liệu.
FROM: Chỉ định bảng dữ liệu
SELECT: Chỉ định các cột cần lấy dữ liệu.
ORDER BY: Xác định cách sắp xếp kết quả.
GROUP BY: Dùng để nhóm các kết quả theo một hoặc nhiều cột.
HAVING: Dùng để lọc các nhóm kết quả (khi sử dụng GROUP BY).
VÍ DỤ
SELECT Name, Department, AVG(Salary)
FROM Employees
WHERE Department = 'Engineering'
GROUP BY Department
HAVING AVG(Salary) > 60000
ORDER BY AVG(Salary) DESC;
Các kỹ thuật tối ưu hóa truy vấn:
Sử dụng chỉ mục (Indexes): Chỉ mục giúp tăng tốc các truy vấn tìm kiếm, đặc biệt là với các cột có nhiều dữ liệu.
Phân tích và tái cấu trúc truy vấn: Viết lại các truy vấn sao cho chúng sử dụng ít tài nguyên hơn hoặc có thể thực thi nhanh hơn.
Kết hợp các phép toán (Joins, Subqueries) một cách hợp lý: Sử dụng phép toán kết nối và các truy vấn con một cách hợp lý để giảm thiểu chi phí tính toán.