Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 4

1

2. Xuất ra thông tin về Mã chuyến, Ngày đi, Số vé định mức, 7a. Xuất danh sách các chuyến đi có mã Tour không phải là
số vé bán, số vé còn tồn (so_ve_ton) của các chuyến du lịch 1, gồm Tên Tour, giá vé máy bay, giá vé ô tô, ngày đi, số vé
biết số vé tồn = Số vé định mức- số vé bán định mức, số vé bán, sắp tăng dần theo ngày đi.

SELECT MA_CHUYEN, NGAY_DI, SO_VE_DM, SELECT TOUR_DL.Ten_Tour,Gia_ve_MB, Gia_ve_oto,


SO_VE_BAN, ([SO_VE_DM]-[SO_VE_BAN]) AS So_ve_dm, So_ve_ban, Ngay_di, MaTour
SO_VE_TON
FROM TOUR_DL INNER JOIN CHUYEN_DL ON
FROM CHUYEN_DL TOUR_DL.MaTour = CHUYEN_DL.MaTour

3. Cộng thêm 200000 với các giá vé máy bay trong tất cả WHERE (MaTour)<>1
chuyến du lịch có ngày đi sau ngày 31/1/2008.
ORDER BY Ngay_di;
UPDATE TOUR_DL INNER JOIN CHUYEN_DL ON
TOUR_DL.MaTour = CHUYEN_DL.MaTour 8. Xuất thông tin Tên Tour DL, mã chuyến, ngày đi, số vé
định mức, số vé bán được, và ghi chú, với ghi chú là “Tốt”
SET TOUR_DL.GIA_VE_MB = nếu số vé bán được = số vé định mức, nếu dưới số vé định
TOUR_DL.GIA_VE_MB+200000 mức 1 vé thì “Đạt” còn không thì ghi “Không”, sắp tăng dần
theo Tên Tour, nếu trùng thì sắp giảm dần theo số vé định
WHERE (CHUYEN_DL.NGAY_DI >#2008/01/31#); mức

3c. Cập nhật ngày đi của chuyến số 3 thành 12/01/2008 SELECT Ma_chuyen, Ngay_di, So_ve_dm, So_ve_ban,
Ten_Tour,
UPDATE CHUYEN_DL IIF(SO_VE_DM=SO_VE_BAN,"TOT",IIF(SO_VE_BAN-
SO_VE_DM=1,"DAT","KHONG")) AS GHICHU
SET NGAY_DI = #2008/01/12#
WHERE (MA_CHUYEN=3) FROM CHUYEN_DL INNER JOIN TOUR_DL ON
CHUYEN_DL.MaTour = TOUR_DL.MaTour
4. Thêm một chuyến Du lịch vào bảng CHUYEN_DL với
thông tin sau (mã chuyến = 6, ngày đi = 17/03/2008, mã tour ORDER BY So_ve_dm DESC , Ten_Tour;
= 4, số vé định mức = 7, số vé bán = 0
OT3: Viết câu truy vấn thể hiện danh sách các mức tiêu thụ
INSERT INTO CHUYEN_DL (MA_CHUYEN, NGAY_DI, cao gồm: Cid, Name (được ghép bởi họ tên), Address,
MATOUR, SO_VE_DM, SO_VE_BAN) Wname, Dname, Consume (tiêu thụ), ConTyp, trong đó tiêu
VALUES (6,#2008/03/17#,4,7,0)
thụ sẽ là “Thấp” nếu nhỏ hơn hay bằng 150, ngược lại là
4b. Thêm vé vào bảng BAN-VE với số chuyến là 4, loại “Cao”.
phươngt iện là 1 và giá vé là 250000
INSERT INTO BAN_VE SELECT DETAIL.Cid, [CFNAME]+" "+[CLNAME] AS
( MA_CHUYEN,PHUONG_TIEN,SO_TIEN) name, Address, Wname, Dname, [NNUM]-[ONUM] AS
VALUES (4,1,250000) Consume, IIF((CONSUME)<=150,"THẤP","CAO") AS
Sau đó thực hiện câu lệnh: ConTyp
FROM DETAIL, WARD INNER JOIN (DISTRICT INNER
5a. Xuất danh sách các Tour không có “Hà Nội” trong tên
Tour, sắp giảm dần theo giá vé MB JOIN CUSTOMER ON DISTRICT.Did = CUSTOMER.Did)
SELECT * ON WARD.Wid = CUSTOMER.Wid
FROM TOUR_DL
WHERE TEN_TOUR NOT LIKE "*Hà Nội*" WHERE ( [NNUM]-[ONUM] >150)
ORDER BY TOUR_DL.Gia_ve_MB DESC

5c. Xuất danh sách các Tour có điểm đến cuối cùng là Đà
1. Viết câu truy vấn tính tiền điện của tất cả các khách
Nẵng
SELECT * hàng và thể hiện danh sách gồm: Cid, Name (được
FROM TOUR_DL ghép bởi họ tên), Phone, Address, Wname, Dname,
WHERE TEN_TOUR LIKE "*Đà Nẵng" Consume (tiêu thụ), ConTyp, Exp. Trong đó tiêu thụ
sẽ là “Thấp” nếu nhỏ hơn hay bằng 150, ngược lại là
“Cao”.
Consume200 Consume>200
onsume100 CREATE TABLE STUDENTS(
ID INT NOT NULL,
950 1.3*1950 1.8*1950 NAME VARCHAR (20) NOT NULL,
250 1.3*2250 1.8*2250 AGE INT NOT NULL,
ADDRESS CHAR (25) ,
DEPARTMENT VARCHAR (200),
540 1.3*2540 1.8*2540
PRIMARY KEY (ID) );
SELECT CUSTOMER.Cid, [CFname]+" "+[CLname] AS
Name, CUSTOMER.Phone, CUSTOMER.Address, 1. Viết câu truy vấn tính điểm trung bình các môn của
WARD.Wname, DISTRICT.Dname, [Nnum]-[Onum] AS các học sinh nữ trong bảng BANG_DIEM và thể
Consume, hiện danh sách gồm: Maso, Toan, Li, Hoa, Van, Tin,
Tbinh với Van và Toan hệ số 2 làm tròn 1 chữ số
IIF((CONSUME)<=150,"THẤP","CAO") AS CONTYP, thập phân.

SELECT BANG_DIEM.Maso, Toan, Li, Hoa, Van, Tin,


IIf(Uid="SH",IIf(consume<=100,
[consume]*1950,IIf(consume<=200,100*1950+(consume- Round(([Toan]*2+[Li]+[Hoa]+[van]*2+[tin])/7,1) AS Tbinh
100)*1.3*1950,100*1950+100*1.3*1950+(consume-
200)*1.8*1950)), FROM BANG_DIEM INNER JOIN HOC_SINH ON
IIf(Uid="SX",IIf(consume<=100, BANG_DIEM.Maso = HOC_SINH.Maso
[consume]*2250,IIf([consume]<=200,100*2250+([consume]-
WHERE GT ="Nữ";
100)*1.3*2250,100*2250+100*1.3*2250+([consume]-
200)*1.8*2250)), 1. Viết câu truy vấn xếp loại học lực tất cả các học sinh
IIf([consume]<=100, trong bảng BANG_DIEM và thể hiện danh sách gồm:
[consume]*2540,IIf([consume]<=200,100*2540+([consume]- Maso, HoVaTen (ghép cột HoDem và Ten), GT,
100)*1.3*2540,100*2540+100*1.3*2540+([consume]- Ngsinh, Tbinh, Hluc với Van và Toan hệ số 2 làm tròn
200)*1.8*2540)))) AS EXP 1 chữ số thập phân, danh sách được sắp tăng dần theo
FROM DETAIL INNER JOIN (DISTRICT INNER JOIN Maso
(WARD INNER JOIN CUSTOMER ON WARD.Wid = Tbinh<5. Tbinh<8. Tbinh<9. Tbinh<1
CUSTOMER.Wid) ON DISTRICT.Did = CUSTOMER.Did)
Tbinh<6. 0 0 0
5
ON DETAIL.Cid = CUSTOMER.Cid
Trung Khá Giỏi Xuất sắc
Bình
WHERE ([NNUM]-[ONUM] >150)
TBINH KHA GIOI XUAT
2. Viết câu truy vấn thể hiện danh sách gồm Cid, Name
(được ghép bởi họ tên), Address, Wname, Dname, SELECT BANG_DIEM.Maso,([HODEM]+" "+[TEN]) AS
Consume (tiêu thụ) của tất khách hàng trong tháng HOVATEN, GT, NGSINH, Round(([Toan]*2+[Li]+[Hoa]+
1 và 2, danh sách
được sắp tăng dần HOC_SINH
theo Cid Mã
Họ Đệm Tên Giới Tính Ngày Sinh Đoàn Viên Địa Chỉ Mã Phường Mã Quận Tổ
Số
SELECT Cid, ([CFNAME] 008 Trương Thái Bảo Long Nam 03-12-2004 No 93 Bình Đông P.08 Q8 6
+" "+[CLNAME]) AS name, [van]*2+[tin])/7,1) AS Tbinh,
Ciid, Phone, Address, Wname, Dname IIF (TBINH<5,"YEU",IIF (TBINH<6.5,"TBINH",IIF
(TBINH<8,"KHA",IIF (TBINH<9,"GIOI","XUAT")))) AS
FROM (CUSTOMER INNER JOIN WARD ON HLUC
CUSTOMER.Wid = WARD.Wid) INNER JOIN DISTRICT
FROM BANG_DIEM INNER JOIN HOC_SINH ON
ON CUSTOMER.Did = DISTRICT.Did BANG_DIEM.Maso = HOC_SINH.Maso

WHERE MONTH =1 OR MONTH=2 ORDER BY BANG_DIEM.MASO;

ORDER BY Cid;
Viết câu truy vấn xét học bổng tất cả các học sinh dựa vào
bảng HOC_BONG và thể hiện danh sách gồm: Maso,
HoVaTen (ghép cột HoDem và Ten), GT, Ngsinh, Tbinh,
Hluc, Hbong (với Van và Toan hệ số 2 làm tròn 1 chữ số
thập phân, danh sách được sắp tăng dần theo Maso)

SELECT BANG_DIEM.Maso, ([HODEM]+" "+[TEN]) AS


HOVATEN, HOC_SINH.GT, HOC_SINH.NGSINH,

Round(([Toan]*2+[Li]+[Hoa]+[van]*2+[tin])/7,1) AS Tbinh,

IIf(TBINH<5,"YEU",IIf(TBINH<6.5,"TBINH",IIf(TBINH<8,"K
HA",IIf(TBINH<9,"GIOI","XUAT")))) AS HLUC,

IIf([HLUC]="XUAT",300,IIf([HLUC]="GIOI",200,IIf([HLUC]
="KHA",100,50))) AS HBONG

FROM BANG_DIEM INNER JOIN HOC_SINH ON


BANG_DIEM.Maso = HOC_SINH.Maso

ORDER BY BANG_DIEM.Maso;

1. Viết câu truy vấn thêm một dòng (bản ghi) cho bảng
HỌC SINH với các giá trị

INSERT INTO HOC_SINH

VALUES (008, "Trương Thái Bảo", "Long", 2, #2004/12/03#,


No, "93 Bình Đông", "P.08", "Q8", 6);

You might also like