Professional Documents
Culture Documents
1.1
Bảng SINHVIEN
);
Bảng MHOC
);
Bảng DKIEN
);
Bảng K_HOC
);
Bảng KQUA
);
Bảng SINHVIEN:
Bảng MHOC:
Bảng DKIEN:
INSERT INTO DKIEN (Mamh, Mamh_truoc)
Bảng K_HOC:
Bảng KQUA:
1.2
Bảng NHANVIEN:
Ma_nql NVARCHAR(10),
Bảng PHONGBAN:
);
Bảng DIADIEM_PHG:
);
Bảng DEAN:
);
Bảng PHANCONG:
);
Bảng THANNHAN:
);
Bảng NHANVIEN:
VALUES ('Nguyen', 'Van A', 'NV001', '1990-01-15', '123 ABC Street', 'Nam',
1000, NULL, 'PHG001');
Bảng PHONGBAN:
INSERT INTO PHONGBAN (Tenphg, Maphg, Trphg, Ng_nhanchuc)
Bảng DIADIEM_PHG:
Bảng DEAN:
VALUES ('Nguyen Van B', 'DA001', 'Tang 3, Toa nha XYZ', 'PHG001');
Bảng PHANCONG:
Bảng THANNHAN:
Bài 2:
SELECT Ten
FROM SINHVIEN;
FROM MHOC;
SELECT Ten
FROM SINHVIEN
1.4 Cho biết các mã số môn học phải học ngay trước môn có mã số COSC3320:
SELECT Mamh
FROM DKIEN
1.5 Cho biết các mã số môn học phải học ngay sau môn có mã số COSC3320:
SELECT Mamh_truoc
FROM DKIEN
1.6 Cho biết tên các sinh viên thuộc về khoa phụ trách môn "Toán rời rạc":
SELECT Ten
FROM SINHVIEN
FROM MHOC
1.7 Sửa lại giá trị cột NAM của sinh viên Sơn thành 2:
UPDATE SINHVIEN
SET Nam = 2
1.8 Cho biết tên sinh viên và các môn học mà sinh viên đó tham gia với kết quả
cuối khoá trên 7 điểm:
FROM SINHVIEN
1.9 Cho biết tên các môn học phải học ngay trước môn "Cơ sở dữ liệu":
SELECT MHOC.Ten_mh
FROM MHOC
INNER JOIN DKIEN ON MHOC.Mamh = DKIEN.Mamh_truoc
SELECT MHOC.Ten_mh
FROM MHOC
1.11 Cho biết tên các môn học mà giáo viên An tham gia giảng dạy và tên sinh
viên theo học môn đó. Sắp xếp kết quả tăng dần theo thứ tự: tên môn học, tên sinh
viên:
FROM MHOC
1.12 Thêm vào bảng SINHVIEN một cột mới: DIACHI char(50):
1.13 Bổ sung địa chỉ cho sinh viên Sơn: "12 nguyễn trãi, Đà Nẵng":
UPDATE SINHVIEN
Câu lệnh này không thành công vì bảng KQUA có khóa chính (Masv, Makh), và
giá trị SV018 và MKH135 đã tồn tại trong bảng. Không thể thêm dòng có giá trị
trùng lặp vào bảng có khóa chính.
1.15 Xóa đi trong bảng SINHVIEN dòng <Sơn, 17, 1, CNTT>. Câu lệnh này thực
hiện có thành công không? Nếu không hãy giải thích lý do:
Câu lệnh này không thành công nếu dòng có giá trị SV017 và CNTT không tồn tại
trong bảng SINHVIEN. Không thể xóa một dòng không tồn tại.
1.16 Cập nhật các sinh viên thuộc khoa CNTT thành khoa TOAN:
UPDATE SINHVIEN
UPDATE MHOC
1.18 Nếu sinh viên có điểm số dưới trung bình thì xoá dữ liệu trong bảng KQUA:
2.1 Cho biết họ tên và địa chỉ các nhân viên sống ở Tp. HCM sắp xếp tăng dần
theo họ tên:
SELECT Holot, Tennv, Dchi
FROM NHANVIEN
2.2 Cho biết họ tên và mức lương các nhân viên trên 40 tuổi sắp xếp tăng dần theo
lương:
FROM NHANVIEN
ORDER BY Luong;
2.3 Liệt kê danh sách những nhân viên (HONV, TENNV) có cùng tên (TENNV)
với người thân:
2.4 Với mọi đề án ở "Hà Nội", liệt kê các mã số đề án (Mada), mã số phòng ban
chủ trì đề án (PHONG), họ tên trưởng phòng (TENNV, HO_NV) cũng như địa chỉ
(DCHI) và ngày sinh (NG_SINH) của người ấy:
FROM DEAN DA
2.5 Cho biết tên những nhân viên phòng số 5 có tham gia đề án "Sản phẩm X" với
số giờ làm việc trên 10 giờ/tuần:
SELECT NV.Tennv
FROM NHANVIEN NV
2.6 Cho biết danh sách những nhân viên (HONV, TENNV) không có thân nhân
nào:
FROM NHANVIEN NV
2.7 Cho biết danh sách những trưởng phòng có tối thiểu một thân nhân:
FROM DEAN DA
2.8 Cho biết danh sách những nhân viên (HONV, TENNV) không làm việc cho bất
kỳ đề án nào:
FROM NHANVIEN NV
2.9 Cho biết danh sách những nhân viên (HONV, TENNV) có trên 2 thân nhân:
FROM NHANVIEN NV
INNER JOIN (SELECT Ma_nvien, COUNT(*) AS SoTN FROM
THANNHAN GROUP BY Ma_nvien) TNCount
ON NV.Manv = TNCount.Ma_nvien
2.10 Tìm tên và địa chỉ của tất cả các nhân viên của phòng "Nghiên cứu":
FROM NHANVIEN NV
FROM NHANVIEN NV
2.12 Tìm họ tên, địa chỉ của những nhân viên làm việc cho một đề án ở Tp.HCM
nhưng phòng ban mà họ trực thuộc tất cả không toạ lạc ở Tp.HCM:
FROM NHANVIEN NV
);