Các ví dụ về tìm kiếm bằng Đại số quan hệ

Một phần của tài liệu Cơ sở dữ liệu (Trang 49 - 51)

Để trả lời một câu hỏi tìm kiếm bằng ngôn ngữ đại số quan hệ ta có thể thực hiện theo các bước sau:

- Tìm lời giải đại số quan hệ

- Chuyển từ lời giải đại số quan hệ sang ngôn ngữ đại số quan hệ. Ví dụ 1: Cho cơ sở dữ liệu BANHANG gồm các quan hệ sau: HOAĐON (SoHĐ, Ngay, MaKH)

KHHANG (MaKH, TenKH, TaiKhoan, Điachi) MHANG (MaMH, TenMH, ĐVTinh, ĐonGia) HĐMH (SoHĐ, MaMH, Sluong, TTien)

Trong đó ý nghĩa của các trường như sau:

SoHĐ: Số hóa đơn; Ngay: Ngày bán hàng;

MaKH: Mã khách hàng; TenKH: Tên khách hàng;

TaiKhoan: Số tài khoản; Điachi: Địa chỉ;

MaMH: Mã mặt hàng; TenMH: Tên mặt hàng;

ĐVTinh: Đơn vị tính; ĐonGia: Đơn giá;

Sluong: Số lượng; TTien: Thành tiền

Trả lời các câu hỏi sau bằng biểu thức Đại số quan hệ và bằng ngôn ngữ Đại số quan hệ:

Cho xem mã, tên của các mặt hàng có giá >100000.

Select MHANG where Đơngia>1000000 giving p1 Project p1 over MaMH, TenMH giving p

Hoặc

Project (Select MHANG where Đơngia>1000000) over MaMH, TenMH giving p

Cho xem mã, tên các khách hàng trên hóa đơn số 100.

ΠMaKH, TenKH (σSoHĐ=100(KHHANG*HOAĐON))

Join KHHANG and HOAĐON over MaKH giving q1 Select q1 where SoHĐ=100 giving q2

Project q2 over MaKH, TenKH giving q Hoặc

Project (Select (Join KHHANG and HOAĐON over MaKH) where SoHĐ=100) over MaKH, TenKH giving q

Ví dụ 2: Cho CSDL bao gồm các quan hệ sau: SV(MãSV, TênSV, MãKh, Địachỉ, Nămsinh) CBGD(MãCB, TênCB, MãKh, Môndạy, ĐThoại) KHOA(MãKh, TênKh, Vịtrí, TrKhoa).

Trả lời các câu hỏi sau bằng biểu thức Đại số quan hệ và bằng ngôn ngữ Đại số quan hệ.

a) Cho xem thông tin về TênSV, MãKh, Địachỉ của các sinh viên sinh trước năm 1970.

Biểu thức đại số quan hệ

q = Π{TênSV, MãKh, Địachỉ} (σnămsinh<1970 (SV)) Ngôn ngữ đại số quan hệ

Select SV Where Nămsinh < 1970 Giving q1 Project q1 Over TênSV, MãKh, Địachỉ Giving q

Hoặc:

Project (Select SV Where Nămsinh<1970) Over TênSV, MãKh, Địachỉ Giving q

b) Cho xem tên, điện thoại của các cán bộ giảng dạy khoa 'Công nghệ TT' dạy môn 'Cơ sở dữ liệu'.

Biểu thức đại số quan hệ

P = Π{TênCB, ĐThoại} (σTênKh ='Công nghệ TT' ∧ Môndạy='Cơ sở dữ liệu'

(CBGD*KHOA))

Ngôn ngữ đại số quan hệ

Join CBGD and KHOA Over MãKh Giving p1

Select p1 Where (TênKh=’Công nghệ TT’) and (Môndạy=’Cơ sở dữ liệu’) Giving p2

Project p2 Over TênCB, ĐThoai Giving p hoặc

Project (Select (Join CBGD and KHOA Over MãKh) Where (TênKh=’Công nghệ TT’) and (Môndạy=’Cơ sở dữ liệu’) ) Over TênCB, ĐThoại

Một phần của tài liệu Cơ sở dữ liệu (Trang 49 - 51)