Phần2: CƠ SỞ DỮ LIỆU
Cho lược đồ CSDL quản lý nhân viên gồm các quan hệ sau:
NHANVIEN (MaNV, HoTen, NgSinh, DChi, GioiTinh, Luong, Ma_NGS, MaPhong)
Tân từ: Mỗi nhân viên có mã số duy nhất để phân biệt với các nhân viên khác (MaNV), có họ và tên
(HoTen), ngày sinh (NGSINH), địa chỉ (DCHI), giới tính, có một mức lương cơ bản (LUONG), chịu
sự giám sát trực tiếp của một nhân viên khác (Ma_NGS – ghi mã nhân viên được giám sát) và thuộc
một phòng (MaPhong) nào đó trong công ty.
PHONGBAN (MaPB, TenPhong, TrPHG, NgNhanChuc)
Tân từ: Mỗi phòng ban có mã số duy nhất để phân biệt với các phòng ban khác (MaPB), có tên phòng
(TenPhong), cử ra một người làm trưởng phòng (TrPHG – ghi mã nhân viên được cử là trưởng phòng),
và ghi nhận ngày nhận chức trưởng phòng của người đó (NgNhanChuc)
DEAN (MaDA, TenDA, MaPhong, NgayBD, NgayKT)
Tân từ: Mỗi đề án có một mã số duy nhất để phân biệt với các đề án khác (MaDA), có tên đề án
(TenDA), và do một phòng duy nhất phụ trách (MaPhong). Mỗi đề án có ngày bắt đầu (NgayBD) và
ngày kết thúc (NgayKT) đề án.
PHANCONG (MaNV, MaDA, ThoiGian)
Tân từ: Mỗi nhân viên (MaNV) có thể được phân công vào một hay nhiều đề án (MaDA) do phòng
mình phụ trách với lượng thời gian tham gia đề án được tính bằng giờ làm việc trong 1 tuần
(ThoiGian).
3 trang |
Chia sẻ: candy98 | Lượt xem: 579 | Lượt tải: 0
Bạn đang xem nội dung tài liệu Đề thi Tốt nghiệp cử nhân CNTTQM - Đề 3 - ĐHQG Tp.HCM, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
ĐẠI HỌC QUỐC GIA TP.HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC
CÔNG NGHỆ THÔNG TIN
KỲ THI TỐT NGHIỆP CỬ NHÂN CNTTQM NĂM 2010
Môn: CHUYÊN NGÀNH
Thời gian làm bài: 180 phút (Không được sử dụng tài liệu)
Ngày thi:................................
----------------
ĐỀ SỐ 3
Phần 2: CƠ SỞ DỮ LIỆU
Cho lược đồ CSDL quản lý nhân viên gồm các quan hệ sau:
NHANVIEN (MaNV, HoTen, NgSinh, DChi, GioiTinh, Luong, Ma_NGS, MaPhong)
Tân từ: Mỗi nhân viên có mã số duy nhất để phân biệt với các nhân viên khác (MaNV), có họ và tên
(HoTen), ngày sinh (NGSINH), địa chỉ (DCHI), giới tính, có một mức lương cơ bản (LUONG), chịu
sự giám sát trực tiếp của một nhân viên khác (Ma_NGS – ghi mã nhân viên được giám sát) và thuộc
một phòng (MaPhong) nào đó trong công ty.
PHONGBAN (MaPB, TenPhong, TrPHG, NgNhanChuc)
Tân từ: Mỗi phòng ban có mã số duy nhất để phân biệt với các phòng ban khác (MaPB), có tên phòng
(TenPhong), cử ra một người làm trưởng phòng (TrPHG – ghi mã nhân viên được cử là trưởng phòng),
và ghi nhận ngày nhận chức trưởng phòng của người đó (NgNhanChuc)
DEAN (MaDA, TenDA, MaPhong, NgayBD, NgayKT)
Tân từ: Mỗi đề án có một mã số duy nhất để phân biệt với các đề án khác (MaDA), có tên đề án
(TenDA), và do một phòng duy nhất phụ trách (MaPhong). Mỗi đề án có ngày bắt đầu (NgayBD) và
ngày kết thúc (NgayKT) đề án.
PHANCONG (MaNV, MaDA, ThoiGian)
Tân từ: Mỗi nhân viên (MaNV) có thể được phân công vào một hay nhiều đề án (MaDA) do phòng
mình phụ trách với lượng thời gian tham gia đề án được tính bằng giờ làm việc trong 1 tuần
(ThoiGian).
Câu 1: Mô tả chặt chẽ ràng buộc toàn vẹn sau: (1.0 điểm)
Mỗi nhân viên không được tham gia quá 3 đề án.
Câu 2: Thực hiện câu truy vấn sau bằng đại số quan hệ: (0.75 điểm)
Cho biết thông tin về các phòng có các đề án được triển khai năm 2010. Thông tin gồm: Họ tên
trưởng phòng, tên đề án ngày bắt đầu triển khai đề án.
Câu 3: Thực hiện câu truy vấn sau bằng SQL: (0.75 điểm)
Cho biết Họ tên trưởng phòng, tên phòng ban, tên đề án và ngày bắt đầu triển khai đề án của
các đề án được triển khai năm 2010.
Câu 4: Thực hiện câu truy vấn sau bằng SQL: (1.0 điểm)
Cho biết tên phòng và số lượng nhân viên của phòng có ít nhân viên nhất.
-----HẾT-----
ĐẠI HỌC QUỐC GIA TP.HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC
CÔNG NGHỆ THÔNG TIN
KỲ THI TỐT NGHIỆP CỬ NHÂN CNTTQM NĂM 2010
Môn: CHUYÊN NGÀNH
Thời gian làm bài: 180 phút (Không được sử dụng tài liệu)
Ngày thi:................................
----------------
ĐỀ SỐ 3
Câu 1: (1.0 điểm)
* Nội dung:
ĐÁP ÁN
Phần 2: CƠ SỞ DỮ LIỆU
Mỗi nhân viên không được tham gia quá 3 đề án.
t ∈ NHANVIEN, Sum(u.MaDA | u ∈ PHANCONG u.MaNV=t.MaNV) <=3
* Bối cảnh: NHANVIEN, PHANCONG
* Loại RBTV: Ràng buộc toàn vẹn thuộc tính tổng hợp.
* Bảng tầm ảnh hưởng:
Thêm Xóa Sửa
NHANVIEN - - -
PHANCONG + (MaNV) - + (MaNV)
Câu 2: (0.75 điểm)
R1 Π MaNV, Hoten(NHANVIEN)
R2 Π MaPB, TenPhong, TrPHG(PHONGBAN)
R3 (MaPB, HoTen, TenPhong) Π MaPB, HoTen, TenPhong(R1 MaNV, TrPHG R2)
R4 TenDA, MaPhong, NgayBD(Πyear(NgayBD)=2010DEAN)
R(HotenTP, TenPhong, TenDA, NgayBD)Π Hoten,TenPhong,TenDA,NgayBD(R3 MaPB, MaPhongR4 )
Câu 3: (0.75 điểm)
Cách 1:
SELECT HoTen AS 'Ho Ten TP', TenPhong, TenDA, NgayBD
FROM NHANVIEN AS nv, PHONGBAN AS pb, DEAN AS da
WHERE (nv.MaNV=pb.TrPHG) AND
(da.MaPhong=pb.MaPB) AND
(Year(NgayBD)=2010);
Cách 2:
SELECT HoTen AS ['Ho Ten TP'], TenPhong, TenDA, NgayBD
FROM NHANVIEN AS nv, PHONGBAN AS pb, DEAN AS da
WHERE (nv.MaNV=pb.TrPHG) AND
(da.MaPhong=pb.MaPB) AND
(NgayBD>=#1/1/2010#) AND
(NgayBD<=#31/12/2010#)
Cách 3:
SELECT HoTen AS 'Ho Ten TP', TenPhong, TenDA, NgayBD
FROM (Nhanvien AS nv INNER JOIN PhongBan AS pb ON nv.MaNV=pb.TRPHG) INNER
JOIN DEAN as da ON pb.MaPB = da.MaPhong
WHERE year(NgayBD)=2010
Câu 4: (1.0 điểm)
Cách 1:
SELECT TenPhong, count(MaNV) AS SoNV
FROM NHANVIEN AS nv, PHONGBAN AS pb
WHERE nv.MaPhong=pb.MaPB
GROUP BY TenPhong
HAVING Count(MANV) <=ALL
(SELECT Count(MaNV)
FROM NHANVIEN AS nv, PHONGBAN AS pb
WHERE nv.MaPhong=pb.MaPB
GROUP BY MaPB
);
Cách 2:
SELECT TenPhong, count(MaNV) AS SoNV
FROM NHANVIEN AS nv Inner join PHONGBAN AS pb ON (nv.MaPhong=pb.MaPB)
GROUP BY TenPhong
HAVING Count(MANV) <=ALL
(SELECT Count(MaNV)
FROM NHANVIEN AS nv Inner join PHONGBAN AS pb ON (nv.MaPhong=pb.MaPB)
GROUP BY TenPhong
);
Lưu ý : Nếu thí sinh làm bài không theo dàn ý như mỗi câu trong
đáp án, nhưng đủ ý và chính xác thì vẫn được điểm tối đa theo thang
điểm đã qui định.
-----HẾT-----