You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Chương I: Khái niệm cơ bản về các hệ cơ <strong>sở</strong> <strong>dữ</strong> <strong>liệu</strong><br />
trong danh sách sau từ khóa FROM chỉ có một quan hệ có thuộc tính A thì có thề thay A<br />
bởi R.A trong danh sách sau SELECT. E là một biểu thức chứa các phép logic AND, OR<br />
và NOT và các phép toán so sánh =, , ≠, ≥, ≤ ......<br />
Câu vấn tin SQL ở trên có thể biểu diễn bằng biểu thức đại số quan hệ như sau :<br />
π R1.A1,A2,...,Rn.An (σ E (R1 x R2 x..x Rn)).<br />
Nghĩa là lấy tích các quan hệ trong mệnh đề FROM, chọn theo biểu thức E sau WHERE<br />
và cuối cùng chiếu trên các thuộc tính sau mệnh đề SELECT.<br />
FROM : Kết nối<br />
các quan hệ 1<br />
WHERE : Thực<br />
hiện phép chiếu<br />
No<br />
No<br />
GROU<br />
P<br />
ORDE<br />
R<br />
SELECT Thực<br />
hiện phép chiếu<br />
2<br />
Yes<br />
Yes<br />
7<br />
3 4 5<br />
Sort cột sau<br />
ORDER BY<br />
Sort<br />
ORDER BY<br />
Thực hiện<br />
theo nhóm<br />
Hình 5.12 Các bước thực hiện câu lệnh SELECT<br />
6<br />
Thực hiện<br />
HAVING<br />
1. Bước thứ nhất: Thực hiện các phép tích Đề các, hoặc phép kết nối tự nhiên các quan hệ<br />
sau FROM: R1, R2,..., Rn. Nếu lực lượng của ⏐RI⏐= li và bậc là ni, i = 1÷ n. Khi đó,<br />
kết quả của tích sẽ là một quan hệ có n1 + n2 + ...+ nn cột và có l1 x l2 x ...x ln hàng.<br />
2. Bước thứ hai: Thực hiện phép toán chọn trên quan hệ sau bước 1, thoả biểu thức đại số<br />
E sau mệnh đề WHERE.<br />
3. Bước thứ ba: Nếu trong câu lệnh có chứa GROUP BY, nghĩa là hệ thống phải phân loại<br />
(sort) theo các cột được mô tả sau GROUP BY. Thứ tự phân loại theo chiều từ phải qua<br />
trái. Hay nói cách khác, hệ thống sẽ phân hoạch quan hệ kết quả sau bước thứ 2 thành<br />
nhiều nhóm tách biệt nhau. Ví dụ GROUP BY ĐC, HT, nghĩa là sắp xếp theo vần ĐC<br />
(địa chỉ), trong ĐC sắp xếp theo vần HT (họ tên).<br />
114