PDA

View Full Version : Giúp đỡ đề thi SQL



ghostmen
10-06-2011, 10:20
Chuẩn bị thi kết thúc môn sql mong các bác giúp đỡ bài tập sql sever
ĐỀ SỐ 2
Cho cơ sở dữ liệu “Quản lý đề tài“ gồm các quan hệ sau:
GIAOVIEN (Magv, HoTen, NgaySinh)
Tân từ: Mỗi giáo viên cần lưu trữ các thông tin: Mã giáo viên, tên giáo viên, ngày sinh.
DETAI (MaDT, TenDT, NamThucHien,Magv)
Tân từ: Mỗi đề tài cần lưu trữ các thông tin: Mã đề tài, tên đề tài và giáo viên hướng dẫn.
SINHVIEN (MaSV, HoTen, NgaySinh, QueQuan, MaDT, DiemSo)
Tân từ: Mỗi sinh viên cần lưu trữ các thông tin: Mã sinh viên, họ tên sinh viên, ngày sinh, quê quán và đề tài mà sinh viên đó thực hiện, điểm số mà sinh viên thực hiện đề tài.
1) Viết lệnh SQL thực hiện tạo Database + Table (ràng buộc về khóa chính, khóa ngoại )
2) Nhập dữ liệu cho các Table.
3) Trả lời bằng ngôn ngữ SQL các câu truy vấn sau:
1. In danh sách mã sinh viên, họ tên, tên đề tài của các đề tài được giáo viên ‘Nguyen Anh Dung’ hướng dẫn. (2 điểm)
2. Tìm giáo viên hướng dẫn cả hai đề tài có mã ‘DT08’ và ‘DT09’ . (2 điểm)
3. In danh sách các đề tài và điểm trung bình của từng đề tài (điểm trung bình của từng đề tài = trung bình cộng điểm của các sinh viên tham gia vào đề tài đó) được thực hiện trong năm 2006. (1 điểm)
4. In danh sách mã sinh viên, họ tên, tên đề tài của các đề tài được giáo viên ‘Nguyen Anh Dung’ hướng dẫn. (2 điểm)
5. Thống kê số lượng đề tài theo từng năm thực hiện. Thông tin hiển thị gồm có: năm thực hiện, số đề tài (2 điểm)
6. Tìm giáo viên (magv, hoten) hướng dẫn nhiều sinh viên nhất trong năm 2006 (1 điểm).
4) Tạo view giải quyết yêu cầu sau:
1. In danh sách mã sinh viên, họ tên, tên đề tài của các đề tài được thực hiện từ năm 2004 đến 2006. (2 điểm)
2. Cho biết giáo viên (magv, hoten) không hướng dẫn đề tài nào của năm 2006. (1.5 điểm)
3. In danh sách các đề tài và điểm trung bình của từng đề tài (điểm trung bình của từng đề tài = trung bình cộng điểm của các sinh viên tham gia vào đề tài đó) được thực hiện trong năm 2006. (1.5 điểm)
4. Cho biết họ tên, ngày sinh của giáo viên lớn tuổi nhất. (2 điểm)
5. Thống kê số lượng đề tài theo từng giáo viên hướng dẫn. Thông tin hiển thị gồm có: mã giáo viên, họ tên, số đề tài hướng dẫn. Chỉ hiển thị những giáo viên hướng dẫn trên 2 đề tài (2 điểm)
6. Tìm đề tài (MaDT, tenDT) có số lượng sinh viên tham gia nhiều nhất năm 2006 (1 điểm).

ĐỀ SỐ 3
Cho lược đồ quan hệ sau:
1. MATHANG (MSMH, TENHANG, DVT)
Tân từ: Một mặt hàng có một mã số (MSMH) để phân biệt với các mặt hàng khác, một tên hàng (TENHANG), một đơn vị tính (DVT).
2. KHACHHANG (MAKH, TENKH, DIACHI)
Tân từ: Một khách hàng có một mã số (MAKH) duy nhất, một tên khách hàng (TENKH), một địa chỉ khách hàng (DIACHI).
3. PHIEUNHAP (SOPN, NGAYLAP, MAKH, KHO, THANHTIEN)
Tân từ: Một phiếu nhập có một số phiếu nhập (SOPN) duy nhất để phân biệt với các phiếu nhập khác, ngày lập phiếu (NGAYLAP), khách hàng (MAKH), kho (KHO), thành tiền của phiếu nhập (THANHTIEN).
4. CTNHAP (SOPN, MSMH, SOLUONG, DONGIA)
Tân từ: Diễn giải chi tiết một phiếu nhập gồm những mặt hàng gì, số lượng (SOLUONG), đơn giá (DONGIA) bao nhiêu.
1) Viết lệnh SQL thực hiện tạo Database + Table (ràng buộc về khóa chính, khóa ngoại )
2) Nhập dữ liệu cho các Table.
3) Trả lời bằng ngôn ngữ SQL các câu truy vấn sau:
1. Hiển thị thông tin các phiếu nhập của năm 2006, thông tin gồm: số phiếu nhập, tên khách hàng, ngày lập phiếu, thành tiền. (2 điểm)
2. Cho biết khách hàng Ngô Anh Thư đã đặt mua bao nhiêu mặt hàng trong tháng 02 năm 2006, thông tin gồm: tháng, năm, tổng số mặt hàng đã mua. (2 điểm)
3. In danh sách các khách hàng (MAKH, TENKH) có tổng thành tiền của các phiếu nhập từ 1.000.000 trở lên. (1 điểm)
4. Liệt kê thông tin: mã khách hàng, tên khách hàng, số phiếu nhập, mã mặt hàng, số lượng, đơn giá của khách hàng có tên khách hàng là Trần Minh Trí. (1.5 điểm)
5. Cho biết khách hàng nào chưa nhập hàng trong năm 2006, thông tin gồm: mã khách hàng, tên khách hàng, địa chỉ. (1.5 điểm)
6. Liệt kê thông tin của khách hàng có số lượng phiếu nhập nhiều nhất, thông tin gồm: mã khách hàng, tên khách hàng, địa chỉ, tổng số phiếu nhập. (2 điểm)
4) Tạo view giải quyết yêu cầu sau:
1. Liệt kê các chứng từ (MaCT, Loai, NgayLap, TenKho, TriGia) có trị giá <= 1,000,000. (1.5 điểm)
2. Với mỗi vật tư, liệt kê tên vật tư và tổng số lượng nhập trong năm 2006. (2 điểm)
3. Cho biết có bao nhiêu chứng từ xuất trong năm 2006. (1.5 điểm)
4. Liệt kê các kho chưa có chứng từ nhập xuất vật tư. (1.5 điểm)
5. Thống kê vật tư nhập các tháng trong năm 2004. Danh sách gồm các cột: Tháng, Mã vật tư, Tên vật tư, Tổng số chứng từ nhập. (2 điểm)
6. Tính tổng trị giá các chứng từ xuất vật tư trong tháng 10 năm 2004 gồm các thông tin: TongSoCT, TongTG. Trong đó:
TongSoCT: là tất cả các chứng từ xuất vật tư trong tháng 10 năm 2004.
TongTG: là tổng trị giá của tất cả các chứng từ xuất vật tư trong tháng 10 năm 2004. (1.5 ) điểm

ĐỀ SỐ 4
Cho cơ sở dữ liệu “Quản lý đặt mua báo “ gồm các quan hệ sau:
BAO (MaBao, TenBao)
Tân từ: Mỗi loại báo cần lưu trữ các thông tin: Mã báo, tên báo.
KHACHHANG (MaKH, TenKH, Diachi)
Tân từ: Mỗi khách hàng cần lưu trữ các thông tin: Mã khách hàng, tên khách hàng, địa chỉ.
PHIEUDATBAO (MaBao, MaKH, NgayDat, Soluong, Dongia)
Tân từ: mỗi lần khách hàng đặt mua báo các thông tin được lưu trữ như: mã báo, mã khách hàng. Ngày đặt, số lượng đặt, đơn giá bán.
1) Viết lệnh SQL thực hiện tạo Database + Table (ràng buộc về khóa chính, khóa ngoại )
2) Nhập dữ liệu cho các Table.
3) Trả lời bằng ngôn ngữ SQL các câu truy vấn sau:
1. Liệt kê MaKH, TenKH của khách hàng đặt báo có tên báo là ‘Tuoi tre’ trong ngày 1/12/2006. (2 điểm)
2. Tìm tên khách hàng đặt cả hai loại báo có mã báo ‘B01’ và ‘B02’ trong tháng 6 năm 2007. (2 điểm)
3. Tìm tên báo chưa có khách hàng đặt mua trong ngày 2/6/2007. (1 điểm)
4. Liệt kê MaKH, TenKH của khách hàng mua báo có tên báo là ‘Tuoi tre’ trong ngày 1/12/2006. (2 điểm)
5. Có bao nhiêu loại báo mà khách hàng ‘Nguyen Van Dung’ đã đặt mua trong năm 2006 (2 điểm)
6. Tìm báo (MaBao, TenBao) có tổng tiền bán được (tiền bán=soluong*dongia) cao nhất trong năm 2006 (1 điểm)
4) Tạo view giải quyết yêu cầu sau:
1. MaKH, TenKH của khách hàng mua sách có tên sách là ‘Co so du lieu’ trong ngày 1/12/2006 (2 điểm)
2. Tìm tên khách hàng đặt cả hai sách có mã sách là ‘B01’ và ‘B02’ trong tháng 6 năm 2007. (2 điểm)
3. Tìm tên sách chưa có khách hàng đặt mua trong ngày 2/6/2007. (1 điểm)
4. MaKH, TenKH của khách hàng mua sách có tên là ‘Co so du lieu’ trong ngày 1/12/2006. (2 điểm)
5. Có bao nhiêu sách mà khách hàng ‘Nguyen Van Dung’ đã đặt mua trong năm 2006 (2 điểm)
6. Tìm sách (MaSach, Tensach) có tổng tiền bán được (tiền bán=soluong*dongia) cao nhất trong năm 2006 (1 điểm)

[=========> Bổ sung bài viết <=========]

ĐỀ SỐ 1
Cho lược đồ cơ sở dữ liệu như sau:
CaSi (Macs, hoten, ngaysinh, quequan)
Tân từ: Mỗi ca sĩ cần lưu trữ các thông tin: Mã ca sĩ, họ tên, ngày sinh, quê quán.
NhacSi (Mans, hoten, ngaysinh, quequan, diachi)
Tân từ: Mỗi nhạc sĩ cần lưu trữ các thông tin: Mã nhạc sĩ, họ tên, ngày sinh, quê quán, địa chỉ.
BaiHat (Mabh, tenbh, noidung, namsangtac, theloai)
Tân từ: Mỗi bài hát cần lưu trữ các thông tin: Mã bài hát, tên bài hát, nội dung, năm sáng tác, thể loại.
TrinhBay (Macs, mabh, ngaytrinhbay)
Tân từ: khi ca sĩ trình bày một bài hát, các thông tin được ghi nhận như: mã ca sĩ, mã bài hát, ngày trình bày bài hát.
SangTac (Mans, mabh).
Tân từ: Một bài hát có thể được sáng tác bởi một hay nhiều nhạc sĩ.
1) Viết lệnh SQL thực hiện tạo Database + Table (ràng buộc về khóa chính, khóa ngoại )
2) Nhập dữ liệu cho các Table.
3) Trả lời bằng ngôn ngữ SQL các câu truy vấn sau:
1) Hiển thị danh sách bài hát được sáng tác trước 1990. Thông tin hiển thị gồm: tên bài hát, năm sáng tác, họ tên nhạc sĩ sáng tác. (2đ)
2) Cho biết ca sĩ nào có thể hát tất cả các thể loại nhạc (có trong cơ sở dữ liệu)? (1.5đ)
3) Hiển thị danh sách bài hát được sáng tác trước 1990. Thông tin hiển thị gồm: tên bài hát, năm sáng tác, họ tên nhạc sĩ sáng tác. Kết quả sắp theo thứ tự abc tên bài hát (2đ)
4) Cho biết ca sĩ nhỏ tuổi nhất . (1.5đ)
5) Thống kê quê quán và số lượng ca sĩ cùng quê quán. Thông tin hiển thị gồm 2 cột: quê-quán, số-ca-sĩ. (1.5đ)
6) Cho biết họ tên nhạc sĩ và số lượng bài hát họ đã sáng tác, chỉ liệt kê các nhạc sĩ sáng tác trên 5 bài hát. (1.5đ)
4) Tạo view giải quyết yêu cầu sau:
3) Hiển thị danh sách bài hát, ca sĩ trình bày của những bài hát được sáng tác sau 1990. Thông tin hiển thị gồm: tên bài hát, năm sáng tác, họ tên ca sĩ trình bày. Kết quả sắp theo thứ tự abc tên bài hát (2đ)
4) Cho biết ca sĩ (Macs) có thể hát cả 2 thể loại nhạc “Truyền thống” và “Trữ tình”. (1.5đ)
5) Cho biết họ tên những ca sĩ không trình bày một bài hát nào trong năm 2006. (1.5đ)
6) Cho biết họ tên ca sĩ và số bài hát đã trình bày (Lưu ý: đếm bài hát không trùng). (1.5đ)
ĐỀ SỐ 5
Cho lược đồ quan hệ gồm có các quan hệ sau:
THUOC (Mathuoc, Tenthuoc, Dvt, Gia, Nhomdieutri, Mota)
Tân từ: Danh mục các loại thuốc cần lưu trữ các thông tin: mã thuốc, tên thuốc, đơn vị tính, giá, nhóm điều trị (thần kinh, tiêu hóa, …) và mô tả.
HOSO (Mahs, Hotenbn, Ngsinh, Gioitinh, Cmnd, Noisong, Nglaphs)
Tân từ: Mỗi bệnh nhân lần đầu khám bệnh sẽ được cấp hồ sơ theo dõi bệnh, thông tin trong hồ sơ gồm có mã hồ sơ, họ tên bệnh nhân, ngày sinh, giới tính, số chứng minh nhân dân, nơi sinh sống, ngày lập hồ sơ.
KHAMBENH (Idkb, Mahs, Ngkham, Bacsi, Ketluan)
Tân từ: Mỗi khi khám bệnh bác sĩ sẽ điền những thông tin trong hồ sơ của bệnh nhân, gồm có: ngày khám, bác sĩ khám và kết luận tình trạng bệnh. Idkb là mã số khám bệnh.
TOATHUOC (Idkb, Mathuoc, Soluong)
Tân từ: Mỗi lần khám bệnh bác sĩ sẽ cho toa thuốc gồm loại thuốc gì, số lượng bao nhiêu.
1) Viết lệnh SQL thực hiện tạo Database + Table (ràng buộc về khóa chính, khóa ngoại )
2) Nhập dữ liệu cho các Table.
3) Trả lời bằng ngôn ngữ SQL các câu truy vấn sau:
a) In chi tiết các toa thuốc (Mathuoc, tenthuoc, soluong) trong những lần khám bệnh của hồ sơ có mã là ‘026749’. (2 điểm)
b) In danh sách các bệnh nhân (Mahs, Hotenbn, Bacsi, Ketluan) được khám bệnh trong ngày 1/6/2007. (2 điểm)
c) Tìm tên loại thuốc thuộc nhóm điều trị “tiêu hóa” có giá thấp hơn ít nhất một loại thuốc khác thuộc cùng nhóm điều trị. (1 điểm)
d) In danh sách các bệnh nhân (Mahs, Hotenbn, Bacsi, Ketluan) được khám bệnh trong ngày 1/6/2007. Sắp xếp danh sách theo Mahs (tăng dần).(2 điểm)
e) Trong mỗi nhóm điều trị, đếm xem có bao nhiêu loại thuốc? Giá cao nhất bao nhiêu? Thấp nhất bao nhiêu? (2 điểm)
f) Tìm những mã hồ sơ có ít nhất hai lần khám bệnh do cùng một bác sĩ khám. (1 điểm).
4) Tạo view giải quyết yêu cầu sau:
a) Tìm các loại thuốc thuộc nhóm điều trị “tiêu hoá” có giá từ 500 đến 1000 đồng. (2 điểm)
b) In chi tiết các lần khám bệnh (Ngkham, Bacsi, Ketluan) của bệnh nhân có tên “Nguyen Van A” ở Đồng Nai, sinh ngày 1/7/1970. (2 điểm)
c) Tìm những mã hồ sơ có ít nhất hai lần khám bệnh do cùng một bác sĩ khám. (1 điểm)
d) In chi tiết các lần khám bệnh (Ngkham, Bacsi, Ketluan) của bệnh có tên “Nguyen Van A” ở Đồng Nai, sinh ngày 1/7/1970. Sắp xếp theo Ngkham (tăng dần).(2 điểm)
e) Trong năm 2006, in ra các mã hồ sơ khám bệnh ít nhất 2 lần. (2 điểm)
f) Tìm tên loại thuốc thuộc nhóm điều trị “tiêu hóa” có giá thấp hơn ít nhất một loại thuốc khác thuộc cùng nhóm điều trị. (1 điểm).

[=========> Bổ sung bài viết <=========]

Là sinh viên nghèo làm thêm không có thời gian nhiều để giải hết các dề,mong các pro giúp đỡ,Sẽ có hậu tạ cho 5 đề chỉ yêu cầu làm truy vấn và VIEW,Mong các pác giúp đỡ và thông cảm.Kết thúc xong môn này là thi .Thật xấu hổ.
thamtutinh_y@yahoo.com(nộp vào mail dể lại SoDD)