Sunday, December 19, 2010

Giải đề thi CSDL 2010

Hướng Dẫn Phần CSDL


Câu 1:

r x q (
A
B
C
F
G)

a1
a4
a3
a5
a6

a1
a4
a3
a2
a3

a1
a4
a3
a4
a5

a1
a3
a4
a5
a6

a1
a3
a4
a2
a3

a1
a3
a4
a4
a5

a3
a5
a2
a5
a6

a3
a5
a2
a2
a3

a3
a5
a2
a4
a5




r * s (
A
B
C
D
E)


a1
a4
a3
a1
a4


a3
a5
a2
a1
a3





+, câu tiếp theo bạn nào nắm chắc phần tối thiểu hóa nhận thấy ngay BCD chi có trong r và s nên ta có thể bỏ qua phép tích ( x q) và chỉ chọn BCD trên r * s ở trên.
+ chiếu(BCD) trên (r * s x q)=B         C         D
                                               

a4
a3
a1
a5
a2
a1




+phần tiếp nhận thấy B=a2 là không tồn tạià phép chiếu thứ 2 là tập rỗng.
(phần này mình chép xai đề bài thi làm nhầmàbad.)

Bài 2:
NCC( Mã NCC,Tên NCC, Dchi, Dthoai)
MHANG( Mã hàng, Tên hàng, Đơn Giá)
HOADON( số HD, Ngày HSS, Mã NCC, Mã hàng, số lượng)
+/ sử dụng đại số quan hệ:
C1:
            Chiếu (Mã NCC) trên Chọn(Ngày HSS=’12-8-2007’^ Ngày HSS=’15-9-2007’ ^ Đơn Giá >=1000(MHANG*HOADON))
SQL: SELECT (DISTINCT) Mã NCC
            FROM MHANG,HOADON
            WHERE Mã Hàng.MHANG=Mã Hàng.HOADON
                        AND Ngày HSS=’12-8-2007’
AND Ngày HSS=’15-9-2007’
                        AND Đơn Giá >=1000
C2:
            SELECT SUM(số lương x Đơn Giá) AS Tổng doang số,Mã Hàng
            FROM  NCC,MHANG,HOADON
            WHERE Mã NCC.NCC=Mã NCC.HOADON
                        AND Mã Hàng.MHANG=Mã Hàng.HOADON
                        AND Dchi LIKE N’%Hà Nội%’
C3:
            SELECT COUNT(Mã NCC)   //đếm mã ncc ko có distinct nên sẽ đếm số lần lặp.
            FROM MHANG,HOADON    // địa chỉ lấy
            WHERE Mã Hàng.MHANG=Mã Hàng.HOADON  // điều kiện kết nối
            AND Tên Hàng LIKE N’%bút chì%’   // điều kiện
            AND số lượng>=100.                             //điều kiện
            GROUPE BY Mã NCC                       // xếp theo mã NCC
             Hoặc ODER BY ASC (Mã NCC)     //tùy thêm thì thêm ,thêm cận thận xai.hehe
C4:
            SELECT (DISTINCT)Tên Hàng
            FROM MHANG
            WHERE Mã Hàng In
(SELECT Mã Hàng
FROM HOADON
WHERE MIN(số lượng)
)
Bài 3:Làm luôn không chép lại đề
a,
            (chiếu (A>=C) trên (r*q))*(chiếu (B=a1) trên (q*s))*(chiếu (D>A) trên (r*s))
            // chọn sớm như có thể
b,
            (q*r)-(q*r)(chọn(BCD) trên (chiếu (D=a2) trên s))// đưa q*r vào trong cũng được
            // tìm hạng tử chung và chọn sớm như có thể
Bài 4:
            Chưa ở chuẩn 3 do dữ liệu chưa ở dạng nguyên tố
Tách quan hệ tùy từng bạn nhưng mình tách làm 3:
HOADON( Số HD,Ngày HD)
KHACH(Mã Khách, Ten Khách)
TIEN(Mã Khách, Số HD, Tổng tiền)// tổng tiền của từng khách hàng trong ngày
+( Nếu bạn nào cho tổng tiền là tiền của từng hóa đơn thì có thẻ chia làm 2)
HOADON( Số HD,Ngày HD,Tổng Tiền,Mã Khách)
KHACH(Mã Khách, Ten Khách)

No comments:

Post a Comment

Popular Posts