SlideShare a Scribd company logo
Mô hình CSDL quan hệ                .pdf
2
Cho lược đồ CSDL Quản lý đề án công ty
◼NHANVIEN (maNV, hoten, ngaysinh, gioitinh, heSL, diachi, madv,
maNGS)
◼DONVI (maDV, tendv, maTP, ngayBD)
◼DUAN(maDA, tenDA, diadiem, tgBD, maDV)
◼THANNHAN (maNV, ten, ngaysinh, gioitinh, quanhe)
◼NV_DA(maDA, maNV, sogio)
Yêu cầu:
◼Cho danh sách các nhân viên Nam của công ty
◼Thống kê số dự án của từng đơn vị đã thực hiện
◼Thống kê tổng số thời gian đã làm dự án của từng nhân viên
◼Thống kê các dự án mà chỉ có một nhân viên tham gia làm dự án
◼…
◼Biểu diễn các yêu cầu truy vấn?
3
 ĐSQH là một ngôn ngữ lý thuyết bao gồm các phép toán được thực
hiện trên một hay nhiều quan hệ để tạo ra một quan hệ khác mà không
làm thay đổi các quan hệ ban đầu.
ĐSQH là ngôn ngữ hình thức, thường được sử dụng làm cơ sở cho các
ngôn ngữ taho tác dữ liệu (DML) mức cao trong các CSDL quan hệ.
Các phép toán cơ bản trên ĐSQH:
Phép toán cập nhật: insert, update, delete
Phép toán tập hợp: Hợp, Giao, Trừ, Tích Descacrtes
Phép toán đặc trưng của ĐSQH: chiếu, chọn, chia, kết nối
II. CÁC PHÉP TOÁN ĐSQH
 Phép toán cập nhật:
Phép chèn
Phép loại bỏ
Phép thay đổi
Phép toán đại số quan hệ
Hợp, giao, trừ, tích đề các
Chiếu, chọn, chia, kết nối, vv…
5
1. Phép chèn (insert)
Định nghĩa: Phép chèn thêm một bộ t vào quan hệ r{A1, A2, …,
An} có dạng r = rt.
◼INSERT(r;A1 =d1, A2 = d2, …, An= dn)
◼Trong đó: Ai, i=1→n là tên các thuộc tính; di  dom(Ai) là các giá trị thuộc
miền trị tương ứng của Ai.
Ví dụ: KETQUA(MSV, MMH,Diem)
◼Chèn bộ t= (001,CSDL,7)
◼ Hoặc: Insert (Ketqua; MSV=001, MMH=CSDL, Diem=7)
◼ Hoặc: Insert (Ketqua;001,CSDL,7)
6
2. Phép loại bỏ (Del)
❑ Định nghĩa: Phép loại bỏ là phép xóa một bộ ra khỏi quan hệ
r{A1, A2, …, An} cho trước, nó có dạng r=r-t.
❑DEL(r;A1 =d1, A2 = d2, …, An= dn) hoặc DEL(r;d1,d2, …,dn)
❑ Ví dụ: KETQUA(MSV,MMH,Diem), xóa bộ t= (001,CSDL,7)
❑Phép loại bỏ:
❑Hoặc: DEL(Ketqua; MSV=001, MMH=CSDL,Diem=7)
❑Hoặc: DEL(Ketqua; 001, CSDL,7)
❑Hoặc: DEL (Ketqua; MSV=001, MMH=CSDL)
❑ Chú ý: nếu quan hệ có khóa K = {B1, B2, …, Bm}, thì phép loại bỏ
chỉ cần viết
❑DEL (r; B1 = e1, B2 = e2, …, Bm=em )
7
3. Phép thay đổi (Update)
❑ Định nghĩa: Gọi {C1, C2, …, Cp}  {A1, A2, …, An} là tập các thuộc
tính mà tại đó các giá trị của bộ cần thay đổi, khi đó phép thay đổi có
dạng r=rtt’.
❑CH(r;A1 =d1, A2 = d2, …, An= dn ; C1=e1, C2=e2, …, Cp=ep)
❑Nếu K = {B1, B2, …, Bm}, là khóa của quan hệ r thì có thể viết
❑ CH (r;B1 =d1, B2 = d2, …, Bm= dm ; C1=e1, C2=e2, …, Cp=ep)
❑ Ví dụ: KETQUA(MSV,MMH,Diem)
❑ Thay bộ t= (001,CSDL,7) bằng t’ = (001, CSDl, 8)
❑ Hoặc: CH (Ketqua;MSV=001, MMH=CSDL,Diem=7; MSV=001,
MMH=CSDL, Diem=8)
❑Hoặc: CH (Ketqua; MSV=001, MMH=CSDL;Diem=8)
8
4. Phép giao, phép hợp, phép trừ
❑ Do các quan hệ được định nghĩa như là các tập hợp của các bộ nên
phép toán hợp, giao, hiệu được định nghĩa như các phép toán tập
hợp thông thường
❑Chú ý: với ba phép toán này chỉ có các quan hệ cùng lược đồ mới
áp dụng được.
9
4. Phép giao, phép hợp, phép trừ
❑ Hợp của hai quan hệ r và s được ký hiệu là rs, cho kết quả là
một quan hệ chứa tất cả các bộ có trong r hoặc trong s hoặc trong
cả hai.
❑ Các bộ trùng nhau sẽ bị loại bỏ
❑Giao của hai quan hệ r và s được ký hiệu là rs, cho kết quả là
một quan hệ chứa tất cả các bộ có trong cả hai quan hệ r và s.
❑ Phép trừ quan hệ r và s, được ký hiệu là r-s, cho kết quả là một
quan hệ chứa tất cả các bộ có trong r nhưng không có trong s.
10
Ví dụ:
❑Cho hai quan hệ DOT1 và DOT2 như sau:
❑Viết biểu thức ĐSQH:
❑a/ Lập danh sách tất cả các Học viên được khen thưởng.
❑b/ Lập danh sách các học viên được khen thưởng đồng thời trong cả hai đợt.
❑c/ Lập danh sách các học viên khen thưởng ở đợt 1 mà không được khen thưởng
ở đợt 2.
11
Ví dụ:
a/ DOT1  DOT2
BTĐSQH Mahv Hoten
K1103 Le Van Tam
K1114 Tran Ngoc Han
K1203 Le Thanh Hau
K1308 Nguyen Gia
K1101 Le Kieu My
b. ????
c. ?????
12
5. Tích đề các
❑Cho hai lược đồ quan hệ R1(A1,A2,…,An) và R2(B1,B2,…,Bm). r1 và
r2 lần lượt là hai quan hệ trên R1 và R2.
❑Tích decac của hai quan hệ r1 và r2 sẽ tạo thành một quan hệ r3. Với
r3 được xác định như sau:
R3
+ = R1
+  R2
+ = { A1, A2, …, An, B1, B2 ... Bm
}
r3 = r1 x r2 = { (t1,t2) | t1  r1 và t2  r2 }
❑Quan hệ r3 là tập các bộ được ghép lần lượt từ hai quan hệ r1 và
r2. Các thành phần của r1 được đặt trước rồi đến r2.
13 1/24/2024
Ví dụ
r s
r x s
14
6. Phép chiếu - Projection
❑Cho lược đồ R(A1, A2, …, An), r là quan hệ trên R, X là tập thuộc
tính với X  U
❑Phép chiếu của quan hệ r lên tập thuộc tính X là loại bỏ đi một số
thuộc tính của lược đồ R không có trong X và giữ lại những thuộc
tính được liệt kê trong danh sách thuộc tính X.
❑Ký hiệu: 𝝅𝑿(𝒓)
❑Kết quả là một quan hệ chỉ chứa các thuộc tính xác định trong X
(phép chiều chính là phép trích rút dữ liệu theo cột)
15 1/24/2024
Ví dụ 1
 Cho lược đồ quan hệ: SV(maSV, hoten, ngaysinh, gioitinh,diem)
 In danh sách sinh viên gồm mã sinh viên và điểm tương ứng.
 BT ĐSQH:
Mã SV Họ tên Ngày sinh Điểm
001 Trần Anh 23/4/86 8
002 Ngọc Bích 13/4/85 9
003 Xuân Mai 25/3/87 7
004 Hồng Vân 21/6/85 10
Mã SV Điểm
001 8
002 9
003 7
004 10
16
Ví dụ 2
❑Cho lược đồ quan hệ: NhanVien( maNV, hoten, ngaysinh, gioitinh, heSL)
❑Viết BT ĐSQH lấy ra danh sách mã nhân viên, họ tên và lương của các
nhân viên (Lương = hệ số lương * 1.450.000).
❑BT ĐSQH:
17
Bài tập
 Cho lược đồ quan hệ:
 DUAN( MDA, Ten, DiaDiem, MNV )
 THANNHAN( Ten, NS, GT, MNV )
 Viết biểu thức ĐSQH để thực hiện các yêu cầu sau:
 a/ Cho biết mã nhân viên của những nhân viên có tham gia đề án nào đó
hoặc có thân nhân
 b/ Cho biết mã nhân viên của những nhân viên có tham gia đề án và có thân
nhân.
18
7. Phép chọn - Selection
❑Phép chọn trích ra các hàng trong quan hệ thỏa mãn điều kiện
❑Dạng tổng quát: 𝝈𝑭(𝒓)
❑Trong đó:
❑F là biểu thức điều kiện, dùng để lựa chọn các bộ
❑r là quan hệ thực hiện chọn.
❑Kết quả: phép chọn sẽ trả về một quan hệ có danh sách thuộc tính
được chỉ ra trong quan hệ r và có các dòng thỏa mãn điều kiện F.
19
Ví dụ
❑Cho lược đồ: SV (maSV, hoten, ngaysinh, gioitinh, diem)
❑ Viết BT ĐSQH: In danh sách các sinh viên có điểm >7
20
Bài tập
 Cho lược đồ: SV (maSV, hoten, ngaysinh, gioitinh, diem)
 In danh sách sinh viên nữ sinh vào tháng 4. Thông tin gồm mã SV,
họ tên và điểm. Biết hàm lấy tháng sinh là month().
21
8. Phép chia
❑Cho hai lược đồ quan hệ R(A1,A2,…,Am, B1,B2,…,Bn) và S(B1, B2,
…, Bn); r  R, s S
❑Các thuộc tính của S là tập thuộc tính con của R
❑Phép chia quan hệ r và s sẽ tạo thành một quan hệ r3 như sau:
R3
+ = {A1, ..., Am}
r ÷ s = { t | us : (t,u)  r }
 với mọi u thuộc s thì (t,u) thuộc r
22
Ví dụ 1
T= R ÷ S
23 1/24/2024
Ví dụ 2
❑Cho lược đồ gồm hai quan hệ sau
❑MONHOC(monhoc, sotiet)
❑GIAOVIEN(tenGV,monhoc)
❑ Yêu cầu: Lấy danh sách tên giáo viên có thể giảng dạy được tất cả các môn
trong bảng môn học
24
Ví dụ 3
❑Cho lược đồ gồm hai quan hệ sau
❑MONHOC(maMH, TenMH)
❑KETQUATHI(maHV,maMH, Diem)
❑ Yêu cầu:
❑ Lấy danh sách các mã học viên có đủ điểm các môn trong danh sách môn học.
❑ Lấy danh sách các mã học viên có đủ điểm các môn trong bảng kết quả thi.
25
9. Phép gán
❑Phép gán:
❑ Dùng để lưu lại kết quả của một phép toán
❑ Để đơn giản hóa một chuỗi phép toán phức tạp
❑Cú pháp:
❑ R’  E, trong đó E là một biểu thức đại số quan hệ
❑Ví dụ:
❑ BTĐS QH: 𝜋𝑚𝑎𝐻𝑉,𝑚𝑎𝑀𝐻 𝐾𝐸𝑇𝑄𝑈𝐴𝑇𝐻𝐼 ÷ 𝜋𝑚𝑎𝑀𝐻 𝑀𝑂𝑁𝐻𝑂𝐶
❑ Có thể tách thành như sau:
❑ R1  𝜋𝑚𝑎𝐻𝑉,𝑚𝑎𝑀𝐻 𝐾𝐸𝑇𝑄𝑈𝐴𝑇𝐻𝐼
❑ R2  𝜋𝑚𝑎𝑀𝐻 𝑀𝑂𝑁𝐻𝑂𝐶
❑ KQ  R1 ÷ R2
26
10. Phép đổi tên
❑Để đổi tên quan hệ và các thuộc tính.
❑Cú pháp: cho quan hệ R(A1, ..., An)
❑ Đổi tên quan hệ R thành S: S(R).
❑ Đổi tên quan hệ R thành S và các thuộc tính Ai thành Bi
❑ S(B1, B2, ..., Bn)(R).
❑ Đổi tên các thuộc tính Ai thành Bi
❑ (B1, B2, ..., Bn)(R).
❑ Đổi tên quan hệ R thành S và thuộc tính A1 thành B1
❑ S(B1, A2, A3, ..., An)(R).
❑ Đổi tên thuộc tính A1 thành B1
❑ (B1, A2, A3, ..., An)(R).
27
11. Phép kết nối 
❑ Phép nối được ký hiệu là  và được dùng để kết hợp các bộ có liên hệ
với nhau từ hai quan hệ thành một bộ.
❑Dạng tổng quát của phép nối trên hai quan hệ r R{A1,A2,...,An} và s 
S{B1,B2,...,Bm} là:
❑ Kết quả của phép kết nối là một quan hệ q, thỏa mãn
❑ Có n + m thuộc tính Q(A1, A2, …, An, B1, B2, …, Bm)
❑ Mỗi bộ của q là tổ hợp của 2 bộ trong r và s, thỏa mãn điều kiện nối có
dạng Ai  Bj
❑Ai là thuộc tính của r, Bj là thuộc tính của s
❑Ai và Bj có cùng miền giá trị
❑  { , =, , , ,  }
28
Ví dụ
7
7
29
Phép kết nối bằng
❑ Nếu điều kiện kết nối chứa phép so sánh bằng (=) thì phép kết nối
được gọi là phép kết nối bằng
❑Ví dụ:
Ac B C
a1 b1 1
a2 b2 2
a3 b3 1
a4 b4 3
D E
1 e1
2 e2
3 e3
s
r
D
C=

A B C D E
a1 b1 1 1 e1
a2 b2 2 2 e2
a3 b3 1 1 e1
a4 b4 3 3 e3
30
Phép kết nối tự nhiên
 Kết nối bằng tại thuộc tính cùng tên của hai quan hệ và một trong hai
thuộc tính đó bị loại bỏ qua phép kết nối, thì phép kết nối được gọi là kết
nối tự nhiên. Kí hiệu là "*“
 Ví dụ
MSV HT NS
M1 A 12/12/1990
M2 B 3/4/1991
M3 C 12/1/1990
M4 D 4/5/1990
MSV MMH Diem
M1 H1 4
M2 H2 3
M3 H3 5
MSV HT NS MMH Diem
M1 A 1/12/1990 H1 4
M2 B 3/4/1991 H2 3
M3 C 12/1/1990 H3 5
Sinhvien Ketqua Sinhvien*ketqua
31
Ví dụ
❑Cho lược đồ quan hệ:
❑ NHANVIEN(MaNV, HoTen, NgaySinh, GioiTinh, MaP)
❑ PHONG(MaP, TenP, MaNQL, NgayQL)
❑Yêu cầu: viết biểu thức đại số quan hệ
❑ In ra danh sách các phòng. Thông tin gồm: Mã phòng, tên phòng, mã người
quản lý, tên người quản lý.
❑ In ra danh sách các nhân viên. Thông tin bao gồm: mã nhân viên, tên nhân
viên, ngày sinh, tên phòng.
32
12. Các phép toán khác
❑Để biểu diễn các truy vấn mà không thể thực hiện với các phép toán
đại số quan hệ cơ sở
❑ Truy vấn mang tính chất thống kê đơn giản trên một tập hợp các giá trị hoặc
các nhóm tập hợp giá trị dữ liệu.
❑ Các truy vấn dùng để tạo báo cáo
❑ Gồm:
❑ Hàm tập hợp
❑ Phép gom nhóm các bộ dữ liệu
33
Hàm tập hợp và gom nhóm
❑Sử dụng các hàm sau để thực hiện các truy vấn thống kê đơn giản trên tập
hợp các giá trị số
❑ SUM – Tính tổng của các giá trị trong tập hợp
❑ AVG – Tính giá trị trung bình của các giá trị trong tập hợp
❑ MAX, MIN – Tìm giá trị lớn nhất, nhỏ nhất
❑ Để đếm số bộ của một quan hệ hoặc số các giá trị của một thuộc tính.
❑ COUNT
❑ Chú ý: có thể sử dụng kết hợp hàm tập hợp và gom nhóm.
34
Cú pháp
❑Cú pháp:
❑Trong đó:
❑ R là một quan hệ
❑ Gi là tên thuộc tính gom nhóm (có thể không có)
❑ Ai là tên thuộc tính tính toán trong hàm gom nhóm Fi
❑ Kết quả: ta thu được một quan hệ chứa thuộc tính gom nhóm và kết
quả của các hàm kết hợp thực hiện trên nhóm đó.
35
Ví dụ 1
❑Cho lược đồ NHANVIEN(MaNV, Hoten, Ngaysinh, Luong,
GT, MaP)
❑VD1: Tính tổng số nhân viên của công ty và lương trung
bình của cả công ty
❑ FCount(maNV), Avg(luong)(NHANVIEN)
36
Ví dụ 2
❑Cho biết số lượng nhân viên và lương trung bình của nhân viên theo
từng phòng.
❑ maP F count(maNV), Avg(luong) (NHANVIEN)
37
Bài tập tại lớp
❑ Cho lược đồ CSDL Quản lý công ty
NV( MNV, HT, NS, GT, HSL, ĐC, MDV)
ĐV (MDV, TênDV, MTP, ngày bắt đầu)
ĐV–DD (MDV, Địa điểm)
DA ( MDA, TenDA, DD, TGBD, MDV)
THÂN NHÂN ( MNV, TenTN ,NS, GT, QH)
NV_DA (MDA, MNV, SG)
Sử dụng đại số quan hệ thực hiện các yêu cầu sau:
1.Cho biết thông tin cá nhân các NHANVIEN nữ của cơ quan
2.Cho biết danh sách các đề án mà đơn vị “Hanh chinh” thực hiện
3.Với mỗi đơn vị, cho biết tên đơn vị và địa điểm đơn vị
4.Tìm tên những nữ nhân viên và thân nhân của họ
5.Với mỗi nhân viên, cho biết họ tên của nhân viên và tên của dự án mà nhân viên đã tham gia
38
Bài tập tại lớp
6. Với mỗi đề án ở Ha Noi, liệt kê các mã số đề án, mã số đơn vị chủ trì đề án, họ tên
trưởng phòng, cũng như địa chỉ và ngày sinh của người ấy.
7. Tìm tên của các nhân viên làm việc trên tất cả các dự án do đơn vị có mã số 5 kiểm
soát.
8. Tạo ra một danh sách các mã số dự án đối với các dự án có nhân viên hoặc có người
quản lý đơn vị kiểm soát dự án có tên là ‘Nam’.
9. Đưa ra các nhân viên không có người phụ thuộc.
10. Đưa ra tên của những người quản lý có ít nhất là một người phụ thuộc.
Tóm tắt nội dung bài học
❑ Định nghĩa Đại số quan hệ
❑Các phép toán trên đại số quan hệ:
❑Chèn, sửa, xóa
❑ Hợp, Giao, Trừ, Tích Đề các
❑Chiếu, chọn, chia, kết nối,vv…
❑Làm đầy đủ các bài tập trong hệ thống bài tập

More Related Content

PPT
Ôn tập tuyển sinh cao học môn CSDL 2013
PDF
Cơ sở dữ liệu - Luyện thi cao học CNTT
PDF
Cơ sở dữ liệu PTIT đại số quan hệ
PDF
Đại số quan hệ trong môn cơ sở dữ liệu.pdf
PPT
Thiet Ke Co So Du Lieu1
PPT
csdl - buoi5-6
PDF
TRNG_DI_HC_NHA_TRANG.pdf
PPT
Thiet Ke Co So Du Lieu2
Ôn tập tuyển sinh cao học môn CSDL 2013
Cơ sở dữ liệu - Luyện thi cao học CNTT
Cơ sở dữ liệu PTIT đại số quan hệ
Đại số quan hệ trong môn cơ sở dữ liệu.pdf
Thiet Ke Co So Du Lieu1
csdl - buoi5-6
TRNG_DI_HC_NHA_TRANG.pdf
Thiet Ke Co So Du Lieu2

Similar to Mô hình CSDL quan hệ .pdf (20)

PDF
Phu luca ham
PDF
Cấu trúc dữ liệu cơ bản 1
DOC
65 csdl
PDF
02 phep tinhquanhe
PDF
Tsch csdl 01 - dhcntt
PPT
Slide Hệ Quản Trị Cơ sở dữ liệu - CHƯƠNG 3
PPT
PDF
Chuong 1 Matlab co ban.pdf
PDF
Chuong 1 Matlab co ban.pdf
PPTX
Dự đoán liên kết trong đồ thị tri thức
PDF
Thiết kế cơ sở dữ liệu _ chuẩn hóa .pdf
PDF
b34-dml-sql-190213084703.pdf
PPT
ThiếT Kế Và đáNh Giá ThuậT ToáN
PPTX
THDC-Bai05-UngDungXuLyBangTinh_Phan3.pptx
PDF
Java exercises part 2
PDF
Cơ sở dữ liệu PTIT slide 5
PPTX
Giới thiệu Đại số quan hệ Phép toán tập hợp Phép chọn Phép chiếu Phép tích Ca...
PPTX
ORACLE_ch2_SQL.pptx
PDF
Chuong1
PDF
đề 2003
Phu luca ham
Cấu trúc dữ liệu cơ bản 1
65 csdl
02 phep tinhquanhe
Tsch csdl 01 - dhcntt
Slide Hệ Quản Trị Cơ sở dữ liệu - CHƯƠNG 3
Chuong 1 Matlab co ban.pdf
Chuong 1 Matlab co ban.pdf
Dự đoán liên kết trong đồ thị tri thức
Thiết kế cơ sở dữ liệu _ chuẩn hóa .pdf
b34-dml-sql-190213084703.pdf
ThiếT Kế Và đáNh Giá ThuậT ToáN
THDC-Bai05-UngDungXuLyBangTinh_Phan3.pptx
Java exercises part 2
Cơ sở dữ liệu PTIT slide 5
Giới thiệu Đại số quan hệ Phép toán tập hợp Phép chọn Phép chiếu Phép tích Ca...
ORACLE_ch2_SQL.pptx
Chuong1
đề 2003
Ad

Recently uploaded (20)

PPT
ky nang thuyet trinh va trinh bay hieu qua.ppt
PPT
Bài giảng Power Point 2003, hướng dẫn học tập
PPTX
Bộ Giáo Trình Chuẩn YCT1 lesson 12 pptx.pptx
PPTX
Vai trò vô cùng quan trọng để thuyết trình.pptx
PPTX
Chương 1 – Tổng quan về Cơ sở dữ liệu.pptx
DOCX
BÀI TIỂU LUẬN HẾT HỌC PHẦN TỔ CHỨC HOẠT ĐỘNG TRẢI NGHIỆM,HƯỚNG NGHIỆP Ở TRƯỜN...
PDF
Quyền-biểu-tình-của-công-dân-theo-hiến-pháp-Việt-Nam.pdf
PPTX
TIẾT 8, 9, 10. BÀI 32. DINH DƯỠNG VÀ TIÊU HÓA Ở NGƯỜI.pptx
PPTX
Bài giảng Quần xã sinh vật sinh học lớp 8
PDF
BÀI TẬP BỔ TRỢ FRIENDS PLUS 9 - BÀI TẬP TRẮC NGHIỆM, TỰ LUẬN - CẢ NĂM (BÁM SÁ...
PPTX
Chuong1,2-Phuongphapnghiencuukhoahoc.pptx
PDF
Quản trị sự kiện........................
PPT
chương 1 cơ sở văn hóa Việt Nam - định nghĩa - đặc trưng - chức năng
DOCX
Set menu 3 món rất hay và hiện đại dành cho người
PDF
PHÁT TRIỂN NĂNG LỰC KHÁM PHÁ TỰ NHIÊN CHO HỌC SINH TRONG DẠY HỌC CHỦ ĐỀ VẬT S...
PDF
BÀI TẬP BỔ TRỢ 4 KỸ NĂNG TIẾNG ANH 8 GLOBAL SUCCESS - CẢ NĂM - BÁM SÁT FORM Đ...
DOC
TẦM QUAN TRỌNG CỦA VIỆC TUÂN THỦ CÁC QUY TẮC AN TOÀN GIAO THÔNG ĐƯỜNG BỘ
DOCX
2024-2025 HSG HÓA 12 CỤM LẦN 3 - Hải Dương - đề.docx
PPTX
SLIDE BV CHÍNH THỨC LATSKH - note.pptx
PDF
Vision - Language - Model-- - Ebook.pdf
ky nang thuyet trinh va trinh bay hieu qua.ppt
Bài giảng Power Point 2003, hướng dẫn học tập
Bộ Giáo Trình Chuẩn YCT1 lesson 12 pptx.pptx
Vai trò vô cùng quan trọng để thuyết trình.pptx
Chương 1 – Tổng quan về Cơ sở dữ liệu.pptx
BÀI TIỂU LUẬN HẾT HỌC PHẦN TỔ CHỨC HOẠT ĐỘNG TRẢI NGHIỆM,HƯỚNG NGHIỆP Ở TRƯỜN...
Quyền-biểu-tình-của-công-dân-theo-hiến-pháp-Việt-Nam.pdf
TIẾT 8, 9, 10. BÀI 32. DINH DƯỠNG VÀ TIÊU HÓA Ở NGƯỜI.pptx
Bài giảng Quần xã sinh vật sinh học lớp 8
BÀI TẬP BỔ TRỢ FRIENDS PLUS 9 - BÀI TẬP TRẮC NGHIỆM, TỰ LUẬN - CẢ NĂM (BÁM SÁ...
Chuong1,2-Phuongphapnghiencuukhoahoc.pptx
Quản trị sự kiện........................
chương 1 cơ sở văn hóa Việt Nam - định nghĩa - đặc trưng - chức năng
Set menu 3 món rất hay và hiện đại dành cho người
PHÁT TRIỂN NĂNG LỰC KHÁM PHÁ TỰ NHIÊN CHO HỌC SINH TRONG DẠY HỌC CHỦ ĐỀ VẬT S...
BÀI TẬP BỔ TRỢ 4 KỸ NĂNG TIẾNG ANH 8 GLOBAL SUCCESS - CẢ NĂM - BÁM SÁT FORM Đ...
TẦM QUAN TRỌNG CỦA VIỆC TUÂN THỦ CÁC QUY TẮC AN TOÀN GIAO THÔNG ĐƯỜNG BỘ
2024-2025 HSG HÓA 12 CỤM LẦN 3 - Hải Dương - đề.docx
SLIDE BV CHÍNH THỨC LATSKH - note.pptx
Vision - Language - Model-- - Ebook.pdf
Ad

Mô hình CSDL quan hệ .pdf

  • 2. 2 Cho lược đồ CSDL Quản lý đề án công ty ◼NHANVIEN (maNV, hoten, ngaysinh, gioitinh, heSL, diachi, madv, maNGS) ◼DONVI (maDV, tendv, maTP, ngayBD) ◼DUAN(maDA, tenDA, diadiem, tgBD, maDV) ◼THANNHAN (maNV, ten, ngaysinh, gioitinh, quanhe) ◼NV_DA(maDA, maNV, sogio) Yêu cầu: ◼Cho danh sách các nhân viên Nam của công ty ◼Thống kê số dự án của từng đơn vị đã thực hiện ◼Thống kê tổng số thời gian đã làm dự án của từng nhân viên ◼Thống kê các dự án mà chỉ có một nhân viên tham gia làm dự án ◼… ◼Biểu diễn các yêu cầu truy vấn?
  • 3. 3  ĐSQH là một ngôn ngữ lý thuyết bao gồm các phép toán được thực hiện trên một hay nhiều quan hệ để tạo ra một quan hệ khác mà không làm thay đổi các quan hệ ban đầu. ĐSQH là ngôn ngữ hình thức, thường được sử dụng làm cơ sở cho các ngôn ngữ taho tác dữ liệu (DML) mức cao trong các CSDL quan hệ. Các phép toán cơ bản trên ĐSQH: Phép toán cập nhật: insert, update, delete Phép toán tập hợp: Hợp, Giao, Trừ, Tích Descacrtes Phép toán đặc trưng của ĐSQH: chiếu, chọn, chia, kết nối
  • 4. II. CÁC PHÉP TOÁN ĐSQH  Phép toán cập nhật: Phép chèn Phép loại bỏ Phép thay đổi Phép toán đại số quan hệ Hợp, giao, trừ, tích đề các Chiếu, chọn, chia, kết nối, vv…
  • 5. 5 1. Phép chèn (insert) Định nghĩa: Phép chèn thêm một bộ t vào quan hệ r{A1, A2, …, An} có dạng r = rt. ◼INSERT(r;A1 =d1, A2 = d2, …, An= dn) ◼Trong đó: Ai, i=1→n là tên các thuộc tính; di  dom(Ai) là các giá trị thuộc miền trị tương ứng của Ai. Ví dụ: KETQUA(MSV, MMH,Diem) ◼Chèn bộ t= (001,CSDL,7) ◼ Hoặc: Insert (Ketqua; MSV=001, MMH=CSDL, Diem=7) ◼ Hoặc: Insert (Ketqua;001,CSDL,7)
  • 6. 6 2. Phép loại bỏ (Del) ❑ Định nghĩa: Phép loại bỏ là phép xóa một bộ ra khỏi quan hệ r{A1, A2, …, An} cho trước, nó có dạng r=r-t. ❑DEL(r;A1 =d1, A2 = d2, …, An= dn) hoặc DEL(r;d1,d2, …,dn) ❑ Ví dụ: KETQUA(MSV,MMH,Diem), xóa bộ t= (001,CSDL,7) ❑Phép loại bỏ: ❑Hoặc: DEL(Ketqua; MSV=001, MMH=CSDL,Diem=7) ❑Hoặc: DEL(Ketqua; 001, CSDL,7) ❑Hoặc: DEL (Ketqua; MSV=001, MMH=CSDL) ❑ Chú ý: nếu quan hệ có khóa K = {B1, B2, …, Bm}, thì phép loại bỏ chỉ cần viết ❑DEL (r; B1 = e1, B2 = e2, …, Bm=em )
  • 7. 7 3. Phép thay đổi (Update) ❑ Định nghĩa: Gọi {C1, C2, …, Cp}  {A1, A2, …, An} là tập các thuộc tính mà tại đó các giá trị của bộ cần thay đổi, khi đó phép thay đổi có dạng r=rtt’. ❑CH(r;A1 =d1, A2 = d2, …, An= dn ; C1=e1, C2=e2, …, Cp=ep) ❑Nếu K = {B1, B2, …, Bm}, là khóa của quan hệ r thì có thể viết ❑ CH (r;B1 =d1, B2 = d2, …, Bm= dm ; C1=e1, C2=e2, …, Cp=ep) ❑ Ví dụ: KETQUA(MSV,MMH,Diem) ❑ Thay bộ t= (001,CSDL,7) bằng t’ = (001, CSDl, 8) ❑ Hoặc: CH (Ketqua;MSV=001, MMH=CSDL,Diem=7; MSV=001, MMH=CSDL, Diem=8) ❑Hoặc: CH (Ketqua; MSV=001, MMH=CSDL;Diem=8)
  • 8. 8 4. Phép giao, phép hợp, phép trừ ❑ Do các quan hệ được định nghĩa như là các tập hợp của các bộ nên phép toán hợp, giao, hiệu được định nghĩa như các phép toán tập hợp thông thường ❑Chú ý: với ba phép toán này chỉ có các quan hệ cùng lược đồ mới áp dụng được.
  • 9. 9 4. Phép giao, phép hợp, phép trừ ❑ Hợp của hai quan hệ r và s được ký hiệu là rs, cho kết quả là một quan hệ chứa tất cả các bộ có trong r hoặc trong s hoặc trong cả hai. ❑ Các bộ trùng nhau sẽ bị loại bỏ ❑Giao của hai quan hệ r và s được ký hiệu là rs, cho kết quả là một quan hệ chứa tất cả các bộ có trong cả hai quan hệ r và s. ❑ Phép trừ quan hệ r và s, được ký hiệu là r-s, cho kết quả là một quan hệ chứa tất cả các bộ có trong r nhưng không có trong s.
  • 10. 10 Ví dụ: ❑Cho hai quan hệ DOT1 và DOT2 như sau: ❑Viết biểu thức ĐSQH: ❑a/ Lập danh sách tất cả các Học viên được khen thưởng. ❑b/ Lập danh sách các học viên được khen thưởng đồng thời trong cả hai đợt. ❑c/ Lập danh sách các học viên khen thưởng ở đợt 1 mà không được khen thưởng ở đợt 2.
  • 11. 11 Ví dụ: a/ DOT1  DOT2 BTĐSQH Mahv Hoten K1103 Le Van Tam K1114 Tran Ngoc Han K1203 Le Thanh Hau K1308 Nguyen Gia K1101 Le Kieu My b. ???? c. ?????
  • 12. 12 5. Tích đề các ❑Cho hai lược đồ quan hệ R1(A1,A2,…,An) và R2(B1,B2,…,Bm). r1 và r2 lần lượt là hai quan hệ trên R1 và R2. ❑Tích decac của hai quan hệ r1 và r2 sẽ tạo thành một quan hệ r3. Với r3 được xác định như sau: R3 + = R1 +  R2 + = { A1, A2, …, An, B1, B2 ... Bm } r3 = r1 x r2 = { (t1,t2) | t1  r1 và t2  r2 } ❑Quan hệ r3 là tập các bộ được ghép lần lượt từ hai quan hệ r1 và r2. Các thành phần của r1 được đặt trước rồi đến r2.
  • 14. 14 6. Phép chiếu - Projection ❑Cho lược đồ R(A1, A2, …, An), r là quan hệ trên R, X là tập thuộc tính với X  U ❑Phép chiếu của quan hệ r lên tập thuộc tính X là loại bỏ đi một số thuộc tính của lược đồ R không có trong X và giữ lại những thuộc tính được liệt kê trong danh sách thuộc tính X. ❑Ký hiệu: 𝝅𝑿(𝒓) ❑Kết quả là một quan hệ chỉ chứa các thuộc tính xác định trong X (phép chiều chính là phép trích rút dữ liệu theo cột)
  • 15. 15 1/24/2024 Ví dụ 1  Cho lược đồ quan hệ: SV(maSV, hoten, ngaysinh, gioitinh,diem)  In danh sách sinh viên gồm mã sinh viên và điểm tương ứng.  BT ĐSQH: Mã SV Họ tên Ngày sinh Điểm 001 Trần Anh 23/4/86 8 002 Ngọc Bích 13/4/85 9 003 Xuân Mai 25/3/87 7 004 Hồng Vân 21/6/85 10 Mã SV Điểm 001 8 002 9 003 7 004 10
  • 16. 16 Ví dụ 2 ❑Cho lược đồ quan hệ: NhanVien( maNV, hoten, ngaysinh, gioitinh, heSL) ❑Viết BT ĐSQH lấy ra danh sách mã nhân viên, họ tên và lương của các nhân viên (Lương = hệ số lương * 1.450.000). ❑BT ĐSQH:
  • 17. 17 Bài tập  Cho lược đồ quan hệ:  DUAN( MDA, Ten, DiaDiem, MNV )  THANNHAN( Ten, NS, GT, MNV )  Viết biểu thức ĐSQH để thực hiện các yêu cầu sau:  a/ Cho biết mã nhân viên của những nhân viên có tham gia đề án nào đó hoặc có thân nhân  b/ Cho biết mã nhân viên của những nhân viên có tham gia đề án và có thân nhân.
  • 18. 18 7. Phép chọn - Selection ❑Phép chọn trích ra các hàng trong quan hệ thỏa mãn điều kiện ❑Dạng tổng quát: 𝝈𝑭(𝒓) ❑Trong đó: ❑F là biểu thức điều kiện, dùng để lựa chọn các bộ ❑r là quan hệ thực hiện chọn. ❑Kết quả: phép chọn sẽ trả về một quan hệ có danh sách thuộc tính được chỉ ra trong quan hệ r và có các dòng thỏa mãn điều kiện F.
  • 19. 19 Ví dụ ❑Cho lược đồ: SV (maSV, hoten, ngaysinh, gioitinh, diem) ❑ Viết BT ĐSQH: In danh sách các sinh viên có điểm >7
  • 20. 20 Bài tập  Cho lược đồ: SV (maSV, hoten, ngaysinh, gioitinh, diem)  In danh sách sinh viên nữ sinh vào tháng 4. Thông tin gồm mã SV, họ tên và điểm. Biết hàm lấy tháng sinh là month().
  • 21. 21 8. Phép chia ❑Cho hai lược đồ quan hệ R(A1,A2,…,Am, B1,B2,…,Bn) và S(B1, B2, …, Bn); r  R, s S ❑Các thuộc tính của S là tập thuộc tính con của R ❑Phép chia quan hệ r và s sẽ tạo thành một quan hệ r3 như sau: R3 + = {A1, ..., Am} r ÷ s = { t | us : (t,u)  r }  với mọi u thuộc s thì (t,u) thuộc r
  • 23. 23 1/24/2024 Ví dụ 2 ❑Cho lược đồ gồm hai quan hệ sau ❑MONHOC(monhoc, sotiet) ❑GIAOVIEN(tenGV,monhoc) ❑ Yêu cầu: Lấy danh sách tên giáo viên có thể giảng dạy được tất cả các môn trong bảng môn học
  • 24. 24 Ví dụ 3 ❑Cho lược đồ gồm hai quan hệ sau ❑MONHOC(maMH, TenMH) ❑KETQUATHI(maHV,maMH, Diem) ❑ Yêu cầu: ❑ Lấy danh sách các mã học viên có đủ điểm các môn trong danh sách môn học. ❑ Lấy danh sách các mã học viên có đủ điểm các môn trong bảng kết quả thi.
  • 25. 25 9. Phép gán ❑Phép gán: ❑ Dùng để lưu lại kết quả của một phép toán ❑ Để đơn giản hóa một chuỗi phép toán phức tạp ❑Cú pháp: ❑ R’  E, trong đó E là một biểu thức đại số quan hệ ❑Ví dụ: ❑ BTĐS QH: 𝜋𝑚𝑎𝐻𝑉,𝑚𝑎𝑀𝐻 𝐾𝐸𝑇𝑄𝑈𝐴𝑇𝐻𝐼 ÷ 𝜋𝑚𝑎𝑀𝐻 𝑀𝑂𝑁𝐻𝑂𝐶 ❑ Có thể tách thành như sau: ❑ R1  𝜋𝑚𝑎𝐻𝑉,𝑚𝑎𝑀𝐻 𝐾𝐸𝑇𝑄𝑈𝐴𝑇𝐻𝐼 ❑ R2  𝜋𝑚𝑎𝑀𝐻 𝑀𝑂𝑁𝐻𝑂𝐶 ❑ KQ  R1 ÷ R2
  • 26. 26 10. Phép đổi tên ❑Để đổi tên quan hệ và các thuộc tính. ❑Cú pháp: cho quan hệ R(A1, ..., An) ❑ Đổi tên quan hệ R thành S: S(R). ❑ Đổi tên quan hệ R thành S và các thuộc tính Ai thành Bi ❑ S(B1, B2, ..., Bn)(R). ❑ Đổi tên các thuộc tính Ai thành Bi ❑ (B1, B2, ..., Bn)(R). ❑ Đổi tên quan hệ R thành S và thuộc tính A1 thành B1 ❑ S(B1, A2, A3, ..., An)(R). ❑ Đổi tên thuộc tính A1 thành B1 ❑ (B1, A2, A3, ..., An)(R).
  • 27. 27 11. Phép kết nối  ❑ Phép nối được ký hiệu là  và được dùng để kết hợp các bộ có liên hệ với nhau từ hai quan hệ thành một bộ. ❑Dạng tổng quát của phép nối trên hai quan hệ r R{A1,A2,...,An} và s  S{B1,B2,...,Bm} là: ❑ Kết quả của phép kết nối là một quan hệ q, thỏa mãn ❑ Có n + m thuộc tính Q(A1, A2, …, An, B1, B2, …, Bm) ❑ Mỗi bộ của q là tổ hợp của 2 bộ trong r và s, thỏa mãn điều kiện nối có dạng Ai  Bj ❑Ai là thuộc tính của r, Bj là thuộc tính của s ❑Ai và Bj có cùng miền giá trị ❑  { , =, , , ,  }
  • 29. 29 Phép kết nối bằng ❑ Nếu điều kiện kết nối chứa phép so sánh bằng (=) thì phép kết nối được gọi là phép kết nối bằng ❑Ví dụ: Ac B C a1 b1 1 a2 b2 2 a3 b3 1 a4 b4 3 D E 1 e1 2 e2 3 e3 s r D C=  A B C D E a1 b1 1 1 e1 a2 b2 2 2 e2 a3 b3 1 1 e1 a4 b4 3 3 e3
  • 30. 30 Phép kết nối tự nhiên  Kết nối bằng tại thuộc tính cùng tên của hai quan hệ và một trong hai thuộc tính đó bị loại bỏ qua phép kết nối, thì phép kết nối được gọi là kết nối tự nhiên. Kí hiệu là "*“  Ví dụ MSV HT NS M1 A 12/12/1990 M2 B 3/4/1991 M3 C 12/1/1990 M4 D 4/5/1990 MSV MMH Diem M1 H1 4 M2 H2 3 M3 H3 5 MSV HT NS MMH Diem M1 A 1/12/1990 H1 4 M2 B 3/4/1991 H2 3 M3 C 12/1/1990 H3 5 Sinhvien Ketqua Sinhvien*ketqua
  • 31. 31 Ví dụ ❑Cho lược đồ quan hệ: ❑ NHANVIEN(MaNV, HoTen, NgaySinh, GioiTinh, MaP) ❑ PHONG(MaP, TenP, MaNQL, NgayQL) ❑Yêu cầu: viết biểu thức đại số quan hệ ❑ In ra danh sách các phòng. Thông tin gồm: Mã phòng, tên phòng, mã người quản lý, tên người quản lý. ❑ In ra danh sách các nhân viên. Thông tin bao gồm: mã nhân viên, tên nhân viên, ngày sinh, tên phòng.
  • 32. 32 12. Các phép toán khác ❑Để biểu diễn các truy vấn mà không thể thực hiện với các phép toán đại số quan hệ cơ sở ❑ Truy vấn mang tính chất thống kê đơn giản trên một tập hợp các giá trị hoặc các nhóm tập hợp giá trị dữ liệu. ❑ Các truy vấn dùng để tạo báo cáo ❑ Gồm: ❑ Hàm tập hợp ❑ Phép gom nhóm các bộ dữ liệu
  • 33. 33 Hàm tập hợp và gom nhóm ❑Sử dụng các hàm sau để thực hiện các truy vấn thống kê đơn giản trên tập hợp các giá trị số ❑ SUM – Tính tổng của các giá trị trong tập hợp ❑ AVG – Tính giá trị trung bình của các giá trị trong tập hợp ❑ MAX, MIN – Tìm giá trị lớn nhất, nhỏ nhất ❑ Để đếm số bộ của một quan hệ hoặc số các giá trị của một thuộc tính. ❑ COUNT ❑ Chú ý: có thể sử dụng kết hợp hàm tập hợp và gom nhóm.
  • 34. 34 Cú pháp ❑Cú pháp: ❑Trong đó: ❑ R là một quan hệ ❑ Gi là tên thuộc tính gom nhóm (có thể không có) ❑ Ai là tên thuộc tính tính toán trong hàm gom nhóm Fi ❑ Kết quả: ta thu được một quan hệ chứa thuộc tính gom nhóm và kết quả của các hàm kết hợp thực hiện trên nhóm đó.
  • 35. 35 Ví dụ 1 ❑Cho lược đồ NHANVIEN(MaNV, Hoten, Ngaysinh, Luong, GT, MaP) ❑VD1: Tính tổng số nhân viên của công ty và lương trung bình của cả công ty ❑ FCount(maNV), Avg(luong)(NHANVIEN)
  • 36. 36 Ví dụ 2 ❑Cho biết số lượng nhân viên và lương trung bình của nhân viên theo từng phòng. ❑ maP F count(maNV), Avg(luong) (NHANVIEN)
  • 37. 37 Bài tập tại lớp ❑ Cho lược đồ CSDL Quản lý công ty NV( MNV, HT, NS, GT, HSL, ĐC, MDV) ĐV (MDV, TênDV, MTP, ngày bắt đầu) ĐV–DD (MDV, Địa điểm) DA ( MDA, TenDA, DD, TGBD, MDV) THÂN NHÂN ( MNV, TenTN ,NS, GT, QH) NV_DA (MDA, MNV, SG) Sử dụng đại số quan hệ thực hiện các yêu cầu sau: 1.Cho biết thông tin cá nhân các NHANVIEN nữ của cơ quan 2.Cho biết danh sách các đề án mà đơn vị “Hanh chinh” thực hiện 3.Với mỗi đơn vị, cho biết tên đơn vị và địa điểm đơn vị 4.Tìm tên những nữ nhân viên và thân nhân của họ 5.Với mỗi nhân viên, cho biết họ tên của nhân viên và tên của dự án mà nhân viên đã tham gia
  • 38. 38 Bài tập tại lớp 6. Với mỗi đề án ở Ha Noi, liệt kê các mã số đề án, mã số đơn vị chủ trì đề án, họ tên trưởng phòng, cũng như địa chỉ và ngày sinh của người ấy. 7. Tìm tên của các nhân viên làm việc trên tất cả các dự án do đơn vị có mã số 5 kiểm soát. 8. Tạo ra một danh sách các mã số dự án đối với các dự án có nhân viên hoặc có người quản lý đơn vị kiểm soát dự án có tên là ‘Nam’. 9. Đưa ra các nhân viên không có người phụ thuộc. 10. Đưa ra tên của những người quản lý có ít nhất là một người phụ thuộc.
  • 39. Tóm tắt nội dung bài học ❑ Định nghĩa Đại số quan hệ ❑Các phép toán trên đại số quan hệ: ❑Chèn, sửa, xóa ❑ Hợp, Giao, Trừ, Tích Đề các ❑Chiếu, chọn, chia, kết nối,vv… ❑Làm đầy đủ các bài tập trong hệ thống bài tập