intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Đáp án một số bài tập mẫu môn cơ sở dữ liệu (Phần 2)

Chia sẻ: Vu Dat Dat | Ngày: | Loại File: PDF | Số trang:0

1.765
lượt xem
911
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Tài liệu tham khảo về một số dạng bài tập kèm đáp án và bài thảo luận môn cơ sở dữ liệu.

Chủ đề:
Lưu

Nội dung Text: Đáp án một số bài tập mẫu môn cơ sở dữ liệu (Phần 2)

  1. ĐÁN ÁN MOÄT SOÁ BAØI TAÄP MAÃU MOÂN CSDL Baøi 1. Cho löôïc ñoà CSDL sau: HANGHOA (MaHH, TenHH, DonGia) NHANVIEN (MaNV, TenNV) HOADON (MaHD, NgayHD, MaNV) CTHD (MaHD, MaCT, MaHH, SoLuong) 1.1. Vieát caùc caâu SQL cho bieát: a) Doanh soá baùn trong naêm 2008 theo maët haøng. Bieát raèng doanh soá baùn = SoLuong * DonGia. Keát quaû hieån thò goàm Maõ HH, Teân HH vaø toång doanh soá baùn. SELECT hh.mahh, tenhh, sum(soluong*dongia) AS dsban FROM hanghoa hh, hoadon hd, cthd ct WHERE hh.mahh=ct.mahh AND hd.mahd=ct.mahd AND YEAR(ngayhd)=2008 GROUP BY hh.mahh, tenhh ORDER BY SUM(soluong*dongia) b) Nhaân vieân vaø soá löôïng hoùa ñôn baùn trong thaùng 08 naêm 2008 do hoï phuï traùch. Thoâng tin goàm: Maõ NV, Teân NV, Soá löôïng hoùa ñôn phuï traùch, saép xeáp theo soá löôïng giaûm daàn. SELECT nv.manv,tennv, count(mahd) AS so_luong_hd_ban FROM nhanvien nv,hoadon hd WHERE nv.manv=hd.manv AND YEAR(ngayhd)=2008 AND MONTH(ngayhd)=08 GROUP BY nv.manv,tennv ORDER BY COUNT(mahd) DESC c) Haøng hoùa coù ñôn giaù lôùn nhaát laø haøng hoùa naøo? Neáu coù nhieàu maët haøng nhö theá, keát quaû saép xeáp theo Teân HH. SELECT HH.MAHH, TENHH FROM HANGHOA HH WHERE DONGIA=(SELECT MAX(DONGIA) FROM HANGHOA) ORDER BY TENHH Dap an Bai tap mon CSDL trang 1
  2. Hoac: SELECT HH.MAHH, TENHH FROM HANGHOA HH WHERE DONGIA >= ALL (SELECTDONGIA FROM HANGHOA) ORDER BY TENHH d) Danh saùch nhaân vieân chöa töøng phuï traùch baùn moät hoùa ñôn naøo caû. SELECT NV.MANV, TENNV FROM NHANVIEN NV WHERE MANV NOT IN (SELECT DISTINCT MANV FROM HOADON) e) Toång doanh soá baùn trong thaùng 08/2008 cuûa maët haøng coù teân ‘iPHONE 3G’. Bieát raèng doanh soá baùn = SoLuong * DonGia. Thoâng tin goàm: TenHH, TongDS. SELECT MaHH, TenHH, SUM(SOLUONG*DONGIA) AS DSBAN FROM CTHD CT, HANGHOA HH, HOADON HD WHERE HD.MAHD=CT.MAHD AND CT.MAHH=HH.MAHH AND TENHH=’iPHONE 3G’ AND YEAR(NGAYHD)=2008 AND MONTH(NGAYHD)=08 GROUP BY CT.MAHH, TenHH f) Doanh soá baùn trong caùc hoùa ñôn do nhaân vieân coù teân ‘Quynh Huong’ phuï traùch. Thoâng tin goàm: MaHD, NgayHD, Doanh soá. Keát quaû saép xeáp theo doanh soá giaûm daàn. SELECT HD.MAHD, NGAYHD, SUM(SOLUONG*DONGIA) AS DSBAN FROM HOADON HD, CTHD CT, NHANVIEN NV, HANGHOA HH WHERE HD.MAHD=CT.MAHD AND CT.MAHH=HH.MAHH AND NV.MANV=HD.MANV AND TENNV=’Quynh Huong’ GROUP BY HD.MAHD, NGAYHD g) Danh saùch nhaân vieân khoâng phuï traùch hoùa ñôn naøo trong thaùng 08/2008. SELECT NV.MANV, TENNV FROM NHANVIEN NV WHERE MANV NOT IN (SELECT DISTINCT MANV FROM HOADON WHERE YEAR(NGAYHD)=2008 AND MONTH(NGAYHD)=08) Dap an Bai tap mon CSDL trang 2
  3. h) Danh saùch haøng hoùa chöa töøng ñöôïc baùn. SELECT HH.MAHH, TENHH FROM HANGHOA HH WHERE MAHH NOT IN (SELECT MAHH FROM CTHD) 1.2. Vieát bieåu thöùc ñaïi soá quan heä cho bieát maõ soá, teân cuûa caùc nhaân vieân phuï traùch caùc hoùa ñôn baùn haøng maët haøng ‘sua’. p MANV, TENNV (NHANVIEN |>
  4. Baøi 3: xaùc ñònh daïng chuaån cuûa löôïc ñoà quan heä. 3.1. Cho löôïc ñoà quan heä Q(ABCDEGHI) vaø taäp phuï thuoäc haøm F F = { AB à DE C à ABDE GàH ABI à H BI à GH } - Xaùc ñònh {IC} laø khoùa cuûa löôïc ñoà. - Xaùc ñònh daïng chuaån cuûa löôïc ñoà. Tính {IC}+ = {ICABDE} { ICABDE }+ = { ICABDEGH } = Q+ => IC laø sieâu khoùa, vaø caùc taäp con cuûa IC thoûa: {I}+ = {I} => khoâng laø sieâu khoùa {C}+ = {CABDE} => khoâng laø sieâu khoùa => IC laø toái thieåu => IC laø khoùa Do f2: ABDE phuï thuoäc khoâng ñaày ñuû vaøo khoùa à Khoâng ñaït daïng chuaån 2 à Daïng chuaån 1 3.2. Cho löôïc ñoà quan heä Q(CDVLGTPN) vaø taäp phuï thuoäc haøm F F = { V à CDLG CD à LG TàP CDN à P DN à TP } - Xaùc ñònh {VN} laø khoùa cuûa löôïc ñoà. - Xaùc ñònh daïng chuaån cuûa löôïc ñoà. Tính {VN}+ = {VNCDLG} { VNCDLG }+ = { VNCDLGTP } = Attrs(Q) => VN laø sieâu khoùa, vaø caùc taäp con cuûa VN thoûa: {V}+ = {VCDLG} => khoâng laø sieâu khoùa {N}+ = {N} => khoâng laø sieâu khoùa => VN laø toái thieåu => VN laø khoùa Do f1 neân CDLG phuï thuoäc khoâng ñaày ñuû vaøo khoùa à khoâng ñaït Daïng chuaån 2 à Daïng chuaån 1 Dap an Bai tap mon CSDL trang 4
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2