


Preview text:
CREATE DATABASE THUCHANH1 USE THUCHANH1 --KHOA (MAKHOA, TENKHOA) CREATE TABLE KHOA ( MAKHOA CHAR(10) PRIMARY KEY,  TENKHOA VARCHAR(50)  )
--LOP (MALOP, TENLOP, SISODK, MAKHOA) CREATE TABLE LOP ( MALOP CHAR(10) PRIMARY KEY,  TENLOP VARCHAR(50),  SISODK INT ,
 MAKHOA CHAR(10) FOREIGN KEY REFERENCES KHOA(MAKHOA)  )
 --SINHVIEN (MASV, HOTEN, NGSINH, DCHI, GIOITINH, MALOP  CREATE TABLE SINHVIEN  ( MASV CHAR(10) PRIMARY KEY,  HOTEN NVARCHAR(50),  NGSINH DATE,  DCHI NVARCHAR(50),  GIOITINH VARCHAR(50),
 MALOP CHAR(10) FOREIGN KEY REFERENCES LOP(MALOP)  ) --MONHOC (MAMH, TENMH, SOTIET) CREATE TABLE MONHOC ( MAMH CHAR(10) PRIMARY KEY,  TENMH VARCHAR(50),  SOTIET INT  ) --KETQUA (MASV, MAMH, DIEM) CREATE TABLE KETQUA ( MASV CHAR(10),  MAMH CHAR(10),  DIEM INT,  PRIMARY KEY(MASV, MAMH),
 FOREIGN KEY (MASV) REFERENCES SINHVIEN(MASV),
 FOREIGN KEY (MAMH) REFERENCES MONHOC(MAMH) ) INSERT INTO KHOA VALUES ('K01','CNTT'),  ('K02','DTVT'),  ('K03','KTQL'),  ('K04','TDH') INSERT INTO LOP
VALUES ('L01','D16CNPM6',60,'K01'),  ('L02','D16CNPM2',65,'K01'),  ('L03','D16DTVT1',60,'K02'),  ('L04','D16DTVT2',62,'K02'),  ('L05','D16KTQL1',55,'K03'),  ('L06','D16KTQL2',61,'K03'),  ('L07','D16TDH1',66,'K04'),  ('L08','D16TDH2',67,'K04') INSERT INTO SINHVIEN
VALUES ('SV01','LE MANH HA','2003-07-08','HA NOI','NAM','L01'),
('SV02','NGUYEN MANH THU ','2003-06-09','PHU THO','NU','L01'),
('SV03','NGUYEN HONG NGOC','2003-08-08','THANH HOA','NU','L02'),
('SV04','CHU TUYET LINH','2003-05-08','HA NOI','NU','L02'),
('SV05','DINH THU HOAI','2003-10-12','YEN BAI','NU','L03'),
('SV06','LE LUU LUYEN ','2003-12-08','NGHE AN ','NU','L03'),
('SV07','NGUYEN THI HOA ','2003-02-08','BAC NINH','NU','L04'),
('SV08','LE LAN ANH','2003-07-08','THANH HOA','NU','L05') INSERT INTO MONHOC VALUES ('M01','HQTCSDL',45), ('M02','TRIET',90), ('M03','CSDL',15), ('M04','TOANROIRAC',30) INSERT INTO KETQUA VALUES ('SV01','M01',10), ('SV01','M02',9), ('SV02','M03',5), ('SV02','M04',3), ('SV03','M02',7), ('SV03','M04',6), ('SV04','M01',8), ('SV05','M04',10)
--Cho bi?t tên nh?ng môn h?c có s? ti?t >=30 và <=90 SELECT TENMH FROM MONHOC WHERE SOTIET >= 30  AND SOTIET <= 90
--Cho bi?t h? tên nh?ng sinh viên có ten l?p ‘D16CNPM2’ có ?i?m thi trong kho?ng t? 6 ??n 8 diem SELECT DISTINCT HOTEN FROM SINHVIEN , KETQUA , LOP
WHERE SINHVIEN.MALOP = LOP.MALOP
AND KETQUA.MASV = SINHVIEN.MASV AND TENLOP = 'D16CNPM2'
AND DIEM >= 6 AND DIEM <= 8
--Cho bi?t tên nh?ng môn h?c có s? ti?t <60 và do nh?ng sinh viên thu?c MA KHOA ‘K01 ’  theo h?c. SELECT DISTINCT TENMH , SOTIET
FROM MONHOC , KETQUA , SINHVIEN , LOP
WHERE MONHOC.MAMH = KETQUA.MAMH
AND KETQUA.MASV = SINHVIEN.MASV AND SINHVIEN.MALOP = LOP.MALOP AND SOTIET < 60 AND MAKHOA = 'K01'
--Cho bi?t tên nh?ng sinh viên thu?c MA KHOA ‘K01’ h?c môn h?c có tên là ‘HEQTCSDL’ v?i  s? ?i?m <5. SELECT SINHVIEN.HOTEN , DIEM FROM SINHVIEN , MONHOC , ,  KETQUA LOP
WHERE MONHOC.MAMH = KETQUA.MAMH
AND KETQUA.MASV = SINHVIEN.MASV AND SINHVIEN.MALOP = LOP.MALOP AND MAKHOA = 'K01' AND TENMH = 'HQTCSDL' AND DIEM < 5
--Li?t kê danh sách tên khoa và so luong lop trong tung khoa
SELECT TENKHOA , COUNT(LOP.MAKHOA) AS SOLUONGLOP  FROM LOP , KHOA WHERE KHOA.MAKHOA = LOP.MAKHOA GROUP BY TENKHOA
--Cho bi?t h? tên nh?ng sinh viên nào h?c trên 3 môn h?c. SELECT HOTEN  FROM SINHVIEN , KETQUA
WHERE SINHVIEN.MASV = KETQUA.MASV GROUP BY HOTEN HAVING COUNT(MAMH) > 3
--Cho biế t tên nhữ ng lớ p có sĩ số thự c ít nhấ t 3 họ c sinh.
SELECT LOP.TENLOP , COUNT(MASV) AS SISOLOP FROM LOP , SINHVIEN
WHERE LOP.MALOP = SINHVIEN.MALOP GROUP BY TENLOP HAVING COUNT(MASV) >= 3 
