Bài gi ng Cơ s D li u SQL – Ph n 4 – Qu n lý i m h c t p c a Sinh viên<br />
* T o Database QuanLySinhVien<br />
- Trư c h t, n u ã có QuanLySinhVien thì xoá i, sau ó t o và Ch n QuanLySinhVien<br />
<br />
làm vi c:<br />
<br />
If Exists (Select Name from Sys.Databases Where Name=N'QuanLySinhVien')<br />
Drop Database QuanLySinhVien;<br />
Create Database QuanLySinhVien;<br />
Use QuanLySinhVien;<br />
<br />
- Ch n Refresh<br />
<br />
xem k t qu :<br />
<br />
* T o Table SinhVien<br />
- Trư c h t, n u ã có Table SinhVien thì xoá i, sau ó t o l i Table SinhVien:<br />
If Exists (Select Name from Sys.Tables Where Name=N'SinhVien') Drop Table<br />
SinhVien;<br />
Create Table SinhVien<br />
(<br />
MaSV Int Not Null Primary Key Identity,<br />
TenSV NVarChar(50) Not Null,<br />
GioiTinh NVarchar(5),<br />
NgaySinh DateTime,<br />
Que NVarChar(50),<br />
Lop NVarChar(5)<br />
)<br />
<br />
* T o Table MonHoc<br />
- N u ã có Table MonHoc thì xoá i, sau ó t o l i Table MonHoc:<br />
If Exists (Select Name from Sys.Tables Where Name=N'MonHoc') Drop Table<br />
MonHoc;<br />
Create Table MonHoc<br />
(<br />
MaMH Int Not Null Primary Key Identity,<br />
TenMH NVarChar(50),<br />
DVHT Int<br />
)<br />
<br />
Biên so n: Th.s Nguy n Anh Vi t<br />
<br />
Trang 1<br />
<br />
Bài gi ng Cơ s D li u SQL – Ph n 4 – Qu n lý i m h c t p c a Sinh viên<br />
* T o Table KetQua<br />
- N u ã có Table KetQua thì xoá i, sau ó t o l i Table KetQua:<br />
If Exists (Select Name from Sys.Tables Where Name=N'KetQua') Drop Table KetQua;<br />
Create Table KetQua<br />
(<br />
MaSV Int,<br />
MaMH Int,<br />
Diem Int,<br />
Constraint Check_Diem Check (Diem Between 0 and 10),<br />
Constraint Primary_Key Primary Key (MaSV, MaMH),<br />
Constraint KhoaNgoai_SV_KQ Foreign Key (MaSV) References SinhVien (MaSV),<br />
Constraint KhoaNgoai_MH_KQ Foreign Key (MaMH) References MonHoc (MaMH)<br />
)<br />
<br />
* Nh p d li u vào Table KetQua<br />
Insert<br />
Select<br />
Select<br />
Select<br />
Select<br />
Select<br />
Select<br />
Select<br />
Select<br />
<br />
Into Sinhvien<br />
N'Ph m Trung Tính', 'Nam', '03/30/1996', N'Qu ng Ninh', 'L01' Union All<br />
N'Tr n B o Tr ng', 'Nam', '12/14/1995', N'Hà Giang', 'L02' Union All<br />
N'Lê Thùy Dung', N'N ', '05/12/1997', N'Hà N i', 'L03' Union All<br />
N'Lê Trư ng An', 'Nam', '11/20/1995', N'Ninh Bình', 'L04' Union All<br />
N'Ph m Th Hương Giang', N'N ', '2/21/1999', N'Hòa Bình', 'L02' Union All<br />
N' oàn Duy Th c', 'Nam', '4/12/1994', N'Hà N i', 'L01' Union All<br />
N'Dương Tu n Thông', 'Nam', '4/12/1991', N'Nam<br />
nh', 'L03' Union All<br />
N'Lê Thành<br />
t', 'Nam', '4/15/1993', N'Phú Th ', 'L04'<br />
<br />
* Nh p d li u vào Table MonHoc<br />
Insert<br />
Select<br />
Select<br />
Select<br />
Select<br />
Select<br />
<br />
Into MonHoc<br />
N'Toán cao c p', 3 Union All<br />
N'M ng máy tính', 3 Union All<br />
N'Tin h c<br />
i cương', 4 Union All<br />
N'H qu n tr cơ s d li u', 2 Union All<br />
N'Cơ s d li u', 2<br />
<br />
* Nh p d li u vào Table KetQua<br />
Insert<br />
Select<br />
Select<br />
Select<br />
Select<br />
Select<br />
Select<br />
Select<br />
Select<br />
Select<br />
Select<br />
Select<br />
Select<br />
Select<br />
Select<br />
Select<br />
<br />
Into Ketqua<br />
1,1,8 Union<br />
1,2,5 Union<br />
2,2,1 Union<br />
3,2,7 Union<br />
4,2,3 Union<br />
1,3,7 Union<br />
2,1,9 Union<br />
4,1,2 Union<br />
3,1,4 Union<br />
2,3,2 Union<br />
5,1,4 Union<br />
6,1,2 Union<br />
6,3,9 Union<br />
6,2,7 Union<br />
6,5,10<br />
<br />
All<br />
All<br />
All<br />
All<br />
All<br />
All<br />
All<br />
All<br />
All<br />
All<br />
All<br />
All<br />
All<br />
All<br />
<br />
Biên so n: Th.s Nguy n Anh Vi t<br />
<br />
Trang 2<br />
<br />
Bài gi ng Cơ s D li u SQL – Ph n 4 – Qu n lý i m h c t p c a Sinh viên<br />
Ví d 1: Cho bi t mã s , tên, i m thi t t c các môn c a sinh viên Ph m Trung Tính<br />
- Tìm i m c a sinh viên theo tên sinh viên:<br />
Select MH.MaMH, TenMH, Diem<br />
From SinhVien SV, MonHoc MH, KetQua KQ<br />
Where SV.MaSV = KQ.MaSV and MH.MaMH = KQ.MaMH and TenSV = N'Ph m Trung Tính'<br />
<br />
- K t qu như sau:<br />
<br />
Ví d 2: Cho bi t mã s , tên, i m thi t t c các môn c a sinh viên có mã sinh viên = 2<br />
- Tìm i m c a sinh viên theo mã sinh viên:<br />
Select MH.MaMH, TenMH, Diem<br />
From SinhVien SV, MonHoc MH, KetQua KQ<br />
Where SV.MaSV = KQ.MaSV and MH.MaMH = KQ.MaMH and SV.MaSV = 2<br />
<br />
- K t qu như sau:<br />
<br />
Ví d 3: Cho bi t mã s , tên môn và i m thi<br />
( i m<br />
(select MIN(Diem) from KetQua where MaMH = 1)<br />
<br />
- K t qu như sau:<br />
<br />
Biên so n: Th.s Nguy n Anh Vi t<br />
<br />
Trang 4<br />
<br />
Bài gi ng Cơ s D li u SQL – Ph n 4 – Qu n lý i m h c t p c a Sinh viên<br />
<br />
Ví d 7: Cho bi t mã s và tên nh ng sinh viên có i m thi môn 1 l n hơn i m thi môn 1 c a sinh<br />
viên 3.<br />
- Th c hi n:<br />
Select SV.MaSV, TenSV<br />
From SinhVien SV, MonHoc MH, KetQua KQ<br />
Where SV.MaSV = KQ.MaSV and MH.MaMH = KQ.MaMH and MH.MaMH = 1 and Diem ><br />
(Select Diem From KetQua Where MaMH = 1 and MaSV = 3)<br />
<br />
- K t qu như sau:<br />
<br />
Ví d 8: Cho bi t s sinh viên ph i thi l i môn Cơ s d li u.<br />
- Th c hi n:<br />
Select COUNT(*) as N'S sv thi l i'<br />
From MonHoc MH, KetQua KQ<br />
Where MH.MaMH = KQ.MaMH and TenMH = N'M ng máy tính' and Diem < 5<br />
<br />
- K t qu như sau:<br />
<br />
Ví d 9: Cho bi t MaSV, TenSV, i m c a các sinh viên ph i thi l i môn Cơ s d li u.<br />
<br />
Biên so n: Th.s Nguy n Anh Vi t<br />
<br />
Trang 5<br />
<br />