Đại số quan hệ (tiếng Anh: relational algebra) là một tập hợp các toán tử và quy tắc được sử dụng chủ yếu trong lý thuyết cơ sở dữ liệu quan hệ để thao tác với các quan hệ (relations) và tạo ra các quan hệ mới. Mặc dù trước đây đại số quan hệ không được chú ý nhiều, nó đã trở nên quan trọng kể từ khi Edgar F. Codd phát triển mô hình dữ liệu quan hệ (relational model) vào năm 1970. Hiện nay, đại số quan hệ được coi là nền tảng của các ngôn ngữ truy vấn cơ sở dữ liệu.
Khả năng hợp nhất
Hai lược đồ quan hệ R(A1, A2,..., An) và S(B1, B2,..., Bm) được coi là có thể hợp nhất nếu:
- Chúng có cùng số lượng thuộc tính: m = n.
- Miền giá trị (DOM) của các thuộc tính tương ứng là giống nhau: DOM(Ai) = DOM(Bi) với 1 ≤ i ≤ n.
Các phép toán
NHANVIEN | ||||||
---|---|---|---|---|---|---|
MaNV | HoNV | TenNV | SDT | Phong | Luong | |
NV01 | Nguyen Van | A | [email protected] | 0123456789 | 1 | 20000 |
NV02 | Tran Thanh | B | [email protected] | 0987643210 | 1 | 22000 |
NV03 | Tran Thi | C | [email protected] | 0388888888 | 3 | 15000 |
NV04 | Cao Quoc | D | [email protected] | 0246802468 | 2 | 17000 |
NV05 | Bui Dinh | E | [email protected] | 0135791357 | 2 | 19500 |
NV06 | Nguyen Minh | E | [email protected] | 0888888888 | 3 | 18000 |
NV07 | Tran Tien | F | [email protected] | 07111111111 | 4 | 19500 |
NV08 | Huynh Thi | C | [email protected] | 0505050505 | 4 | 15600 |
PHONGBAN | |
---|---|
MaPB | TenPB |
1 | Phong ban 1 |
2 | Phong ban 2 |
3 | Phong ban 3 |
4 | Phong ban 4 |
5 | Phong ban 5 |
6 | Phong ban 6 |
Phép hợp
Khi xét hai quan hệ R(U) và S(U), với U là tập các thuộc tính hữu hạn, điều kiện là R và S phải có thể hợp nhất được. Ký hiệu: R∪S. Kết quả là A = R∪S, một quan hệ trên tập thuộc tính U, chứa các bộ r sao cho r thuộc R hoặc r thuộc S.
QUANLY | ||||||
---|---|---|---|---|---|---|
MaNV | HoNV | TenNV | SDT | Phong | Luong | |
NV02 | Tran Thanh | B | [email protected] | 0987643210 | 1 | 22000 |
NV05 | Bui Dinh | E | [email protected] | 0135791357 | 2 | 19500 |
NV05 | Bui Dinh | E | [email protected] | 0135791357 | 2 | 19500 |
NV06 | Nguyen Minh | E | [email protected] | 0888888888 | 3 | 18000 |
NV07 | Tran Tien | F | [email protected] | 07111111111 | 4 | 19500 |
NV09 | Ho Huu | P | [email protected] | 0378978900 | 5 | 23000 |
NV10 | Nguyen Huynh | T | [email protected] | 0388883456 | 6 | 22500 |
MaNV | HoNV | TenNV | SDT | Phong | Luong | |
NV01 | Nguyen Van | A | [email protected] | 0123456789 | 1 | 20000 |
NV02 | Tran Thanh | B | [email protected] | 0987643210 | 1 | 22000 |
NV03 | Tran Thi | C | [email protected] | 0388888888 | 3 | 15000 |
NV04 | Cao Quoc | D | [email protected] | 0246802468 | 2 | 17000 |
NV05 | Bui Dinh | E | [email protected] | 0135791357 | 2 | 19500 |
NV06 | Nguyen Minh | E | [email protected] | 0888888888 | 3 | 18000 |
NV07 | Tran Tien | F | [email protected] | 07111111111 | 4 | 19500 |
NV08 | Huynh Thi | C | [email protected] | 0505050505 | 4 | 15600 |
NV09 | Ho Huu | P | [email protected] | 0378978900 | 5 | 23000 |
NV10 | Nguyen Huynh | T | [email protected] | 0388883456 | 6 | 22500 |
Phép giao
Phép giao giữa hai tập hợp R và S có khả năng hợp nhất tạo thành một tập hợp các bộ t sao cho t thuộc cả R và S.
Ký hiệu: . Trong đó:
- R và S là hai quan hệ có thể hợp nhất với nhau.
- : ký hiệu biểu thị phép giao của các tập hợp.
MaNV | HoNV | TenNV | SDT | Phong | Luong | |
NV02 | Tran Thanh | B | [email protected] | 0987643210 | 1 | 22000 |
NV05 | Bui Dinh | E | [email protected] | 0135791357 | 2 | 19500 |
NV05 | Bui Dinh | E | [email protected] | 0135791357 | 2 | 19500 |
NV06 | Nguyen Minh | E | [email protected] | 0888888888 | 3 | 18000 |
NV07 | Tran Tien | F | [email protected] | 07111111111 | 4 | 19500 |
Phép trừ
Xét hai quan hệ R và S trên cùng một tập thuộc tính U. Phép trừ giữa hai quan hệ R và S, ký hiệu là R\S, là một quan hệ trên tập thuộc tính U và được xác định bởi: R\S = {t sao cho t thuộc R và t không thuộc S}
Tích Descartes
Tích Descartes (hay Tích Đềcác) của hai tập hợp A và B, ký hiệu là A×B, là tập hợp gồm tất cả các cặp có dạng (a, b), với a là một phần tử của A và b là một phần tử của B. Trong ngôn ngữ lý thuyết tập hợp, nó được viết như sau:
Phép chọn
Khái niệm
Phép chọn trên một quan hệ R là quá trình lọc các bộ (hàng) trong quan hệ R để chỉ giữ lại những bộ thỏa mãn điều kiện nhất định. Nói cách khác, phép chọn hoạt động như một bộ lọc, loại bỏ các bộ dữ liệu không phù hợp và chỉ giữ lại những bộ đáp ứng yêu cầu. Kết quả là một quan hệ mới được tạo ra.
Ký hiệu: . Trong đó:
- σ: ký hiệu của phép chọn.
- c: điều kiện để chọn, là một biểu thức logic, có thể bao gồm các toán tử như (hoặc), (và), ¬ (phủ định).
- R: quan hệ đang xét.
MaNV | HoNV | TenNV | SDT | Phong | Luong | |
NV01 | Nguyen Van | A | [email protected] | 0123456789 | 1 | 20000 |
NV02 | Tran Thanh | B | [email protected] | 0987643210 | 1 | 22000 |
Các đặc điểm
- Phép giao hoán:
- Phép kết hợp:
Phép chiếu
Phép chiếu được sử dụng để chọn các thuộc tính cần thiết trong một quan hệ và loại bỏ các thuộc tính không cần thiết. Kết quả là một quan hệ mới.
Ký hiệu: . Trong đó:
- : ký hiệu cho phép chiếu.
- : danh sách các thuộc tính cần chiếu trong bảng quan hệ R.
- R: bảng quan hệ R.
MaNV | HoNV | TenNV | Luong |
NV01 | Nguyen Van | A | 20000 |
NV02 | Tran Thanh | B | 22000 |
NV03 | Tran Thi | C | 15000 |
NV04 | Cao Quoc | D | 17000 |
NV05 | Bui Dinh | E | 19500 |
NV06 | Nguyen Minh | E | 18000 |
NV07 | Tran Tien | F | 19500 |
NV08 | Huynh Thi | C | 15600 |
Phép đổi tên
Ký hiệu: hoặc hoặc . Trong đó:
- : ký hiệu của phép đổi tên.
- hoặc hoặc : tên mới của quan hệ sau khi đổi tên, với các thuộc tính là danh sách các thuộc tính mới.
- : tên cũ của quan hệ.
Định nghĩa phép chiếu: Định nghĩa phép chiếu là một phép toán quan hệ trong lý thuyết cơ sở dữ liệu, dùng để chọn một hoặc nhiều thuộc tính từ một bảng quan hệ. Ký hiệu chiếu thường được biểu diễn bằng ký hiệu trong lý thuyết cơ sở dữ liệu. Phép chiếu giúp giới hạn dữ liệu chỉ bao gồm các thuộc tính cần thiết và loại bỏ các thuộc tính không cần thiết, do đó tạo ra một bảng con từ bảng gốc.
Phép kết nối
Phép nối tự nhiên
Phép nối
Ký hiệu: . Trong đó:
- R và S: là các bảng quan hệ.
- : ký hiệu của phép nối , trong đó là một điều kiện logic.
MaNV | HoNV | TenNV | SDT | Phong | Luong | TenPB | |
NV01 | Nguyen Van | A | [email protected] | 0123456789 | 1 | 20000 | Phong ban 1 |
NV02 | Tran Thanh | B | [email protected] | 0987643210 | 1 | 22000 | Phong ban 1 |
NV03 | Tran Thi | C | [email protected] | 0388888888 | 3 | 15000 | Phong ban 3 |
NV04 | Cao Quoc | D | [email protected] | 0246802468 | 2 | 17000 | Phong ban 2 |
NV05 | Bui Dinh | E | [email protected] | 0135791357 | 2 | 19500 | Phong ban 2 |
NV06 | Nguyen Minh | E | [email protected] | 0888888888 | 3 | 18000 | Phong ban 3 |
NV07 | Tran Tien | F | [email protected] | 07111111111 | 4 | 19500 | Phong ban 4 |
NV08 | Huynh Thi | C | [email protected] | 0505050505 | 4 | 15600 | Phong ban 4 |
Nhận xét:
Phép nối bên ngoài
Phép nối bên ngoài - trái
Phép nối bên ngoài - phải
Phép nối bên ngoài toàn diện
Phép chia
- Hợp tác Descartes
- Phép chiếu trong toán học
- Phép chiếu trong lý thuyết tập hợp
- Quan hệ trong toán học