1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài tập Quản lý điểm sinh viên SQL Sever

7 1,4K 18

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 7
Dung lượng 116,05 KB

Nội dung

Bài tập SQL .Bài tập SQL Sever cơ bản. Bài tập Quản lý điểm sinh viên SQL Sever. Bài tập Quản lý sinh viên SQL Sever. Bài tập Quản lý điểm sinh viên SQL Sever. Bài tập Quản lý điểm sinh viên SQL Sever. Bài tập Quản lý điểm sinh viên SQL Sever.

Trang 1

SinhVien(MaSV, HoDem, Ten, NgaySinh, GioiTinh, NoiSinh, QueQuan, DiaChi, DienThoai, DiemDauVao, DoiTuong, KhuVuc)

MonHoc(MaMon, TenMon, SoTinChi, HocKy)

Diem(MaSV, MaMon, Diem)

1 Đưa ra họ tên sinh viên nữ có điểm đầu vào nằm trong khoảng từ 20 đến 25 và đối tượng là 5 hoặc 6 hoặc 7

2 Đưa ra họ tên, ngày sinh những sinh viên sinh vào quý II năm 1990

3 Đưa ra họ tên, tuổi những sinh viên có tuổi không thuộc từ 24 đến 27

4 Đưa ra mức điểm đầu vào cao nhất

5 Đếm xem có bao nhiêu sinh viên có đối tượng là 1

6 Đưa ra giới tính và số lượng sinh viên tương ứng

7 Đưa ra tên môn có số tín chỉ nhỏ nhất

8 Đếm xem có bao nhiêu sinh viên có khu vực là KV3 và KV1

9 Đưa ra danh sách 5 sinh viên có điểm đầu vào cao nhất

10 Đưa ra danh sách tỉnh thành mà sinh viên có nơi sinh ở đó (không

kể trùng lại)

11 Đưa ra đối tượng và số lượng sinh viên tương ứng

12 Đưa ra số tín chỉ và số lượng môn tương ứng

13 Đưa ra học kỳ và tổng số tín chỉ tương ứng của học kỳ đó

14 Đưa ra họ tên, ngày sinh, nơi sinh, điểm đầu vào của những sinh viên có điểm nhỏ hơn 25 và có họ là Phan

15 Đưa ra họ tên, ngày sinh, tuổi của những sinh viên có tên bắt đầu bằng chữ M

16 Đưa ra mức điểm đầu vào trung bình

17 Đưa ra danh sách sinh viên sắp xếp theo tên, họ đệm tăng dần

18 Đưa ra họ tên, ngày sinh, nơi sinh, điểm đầu vào của những sinh viên có nơi sinh không phải là Hà Nội và điểm đầu vào nằm trong

khoảng từ 18 đến 22

Trang 2

   

Trang 3

CREATE TABLE​ SinhVien( 

MaSV ​VARCHAR​(10), 

HoDem ​NVARCHAR​(30), 

Ten ​NVARCHAR​(20), 

NgaySinh ​DATETIME​, 

GioiTinh ​BIT​, 

NoiSinh ​NVARCHAR​(30), 

QueQuan ​NVARCHAR​(30), 

DiaChi ​NVARCHAR​(50), 

DienThoai ​VARCHAR​(15), 

DiemDauVao ​FLOAT​, 

DoiTuong ​VARCHAR​(10), 

KhuVuc ​VARCHAR​(10) 

 

 

INSERT INTO​ SinhVien ​VALUES​('001', ​N'Nguyễn Văn' , ​N'A'​,​ '1990-10-2'​, 1,  N'Hà Nội' , ​N'Hà Nội' ,​ N'192 Minh Khai'​,​ '0336677889'​, 24,​ '1'​,​ 'KV1'​) 

INSERT INTO ​SinhVien ​VALUES​('002'​,​ N'Nguyễn Thị' ,​ N'B'​,​ '1990-2-19'​, 0,  N'Hà Nội' ,​ N'Hà Nội' ,​ N'192 Minh Khai'​,​ '0336677889'​, 18,​ '1'​,​ 'KV1'​) 

INSERT INTO ​SinhVien ​VALUES​('003'​,​ N'Phan Văn'​,​ N'C', '1990-6-21'​, 1,  N'Bắc Ninh' ,​ N'Hà Nội' ,​ N'192 Minh Khai'​,​ '0336677889'​, 18, ​'1'​,​ 'KV1'​)  INSERT INTO ​SinhVien ​VALUES​(​'004'​,​ N'Mai Thị' ,​ N'D'​,​ '1990-8-19'​, 0,  N'Hà Nội' ,​ N'Hà Nội' ,​ N'192 Minh Khai'​,​ '0336677889'​, 24, ​'5'​,​ 'KV2'​) 

INSERT INTO ​SinhVien ​VALUES​(​'005'​,​ N'Hà Thị' ,​ N'E'​,​ '1990-1-19'​, 0, ​N'Hà  Nội' ,​ N'Hà Nội' ,​ N'192 Minh Khai'​,​ '0336677889'​, 18, ​'7'​,​ 'KV3'​) 

GO 

SELECT ​* ​FROM​ SinhVien 

Trang 4

CREATE TABLE​ MonHoc( 

MaMon ​VARCHAR​(10), 

TenMon ​NVARCHAR​(30), 

SoTinChi ​INT​, 

HocKy ​INT 

 

 

INSERT INTO ​MonHoc ​VALUES​ (​'1001'​,​ N'CSDL'​, 3, 2) 

INSERT INTO ​MonHoc ​VALUES ​(​'1002'​,​ N'SQL'​, 3, 2) 

INSERT INTO ​MonHoc ​VALUES ​(​'1003'​,​ N'Toán A1'​, 2, 2) 

GO 

SELECT ​* ​FROM ​MonHoc 

 

CREATE TABLE ​Diem( 

MaSV ​VARCHAR​(10), 

MaMon ​VARCHAR​(10), 

Diem ​FLOAT 

 

1 Đưa ra họ tên sinh viên nữ có điểm đầu vào nằm trong khoảng từ 

20 đến 25 và đối tượng là 5 hoặc 6 hoặc 7 

SELECT​ CONCAT_WS​(​' '​, HoDem, Ten) ​AS ​N'Họ Tên'  

FROM ​SinhVien 

WHERE ​GioiTinh = 0 

AND ​DiemDauVao ​BETWEEN ​20 ​AND ​25 

AND ​DoiTuong ​IN ​(5, 6, 7) 

 

2 Đưa ra họ tên, ngày sinh những sinh viên sinh vào quý II năm 1990  SELECT ​CONCAT_WS​(​' '​, HoDem, Ten) ​AS ​N'Họ Tên'  

FROM ​SinhVien 

WHERE ​YEAR​(NgaySinh) = 1990 ​AND ​MONTH​(NgaySinh) ​BETWEEN ​4 

AND ​6 

 

Trang 5

SELECT ​CONCAT_WS​(​' '​, HoDem, Ten) ​AS ​N'Họ Tên'  

FROM ​SinhVien 

WHERE ​YEAR​(NgaySinh)​ NOT BETWEEN ​24 ​AND ​27 

 

4 Đưa ra mức điểm đầu vào cao nhất 

SELECT TOP ​1 DiemDauVao ​AS ​N'Điểm đầu vào cao nhất'  

FROM ​SinhVien 

ORDER BY​ DiemDauVao ​DESC 

 

5 Đếm xem có bao nhiêu sinh viên có đối tượng là 1 

SELECT ​DoiTuong, ​COUNT​(MaSV) ​AS ​N'Số sinh viên'  

FROM ​SinhVien 

GROUP BY​ DoiTuong 

HAVING ​DoiTuong = 1 

 

6 Đưa ra giới tính và số lượng sinh viên tương ứng 

SELECT ​(​CASE​ GioiTinh ​WHEN​ '0'​ ​THEN ​N'Nữ' ​WHEN ​'1' ​THEN ​N'Nam'  END​) ​AS​ N'Giới Tính' , ​COUNT​(MaSV) ​AS ​N'Số sinh viên'  

FROM ​SinhVien 

GROUP BY​ GioiTinh 

 

7 Đưa ra tên môn có số tín chỉ nhỏ nhất 

SELECT TOP ​(1) TenMon  

FROM ​MonHoc 

ORDER BY ​SoTinChi ​ASC 

 

8 Đếm xem có bao nhiêu sinh viên có khu vực là KV3 và KV1 

SELECT ​KhuVuc, ​COUNT​(MaSV) ​AS​ N'Số sinh viên'  

FROM ​SinhVien 

GROUP BY​ KhuVuc 

Trang 6

 

9 Đưa ra danh sách 5 sinh viên có điểm đầu vào cao nhất 

SELECT TOP​(5) ​CONCAT_WS​(​' '​, HoDem, Ten) ​AS​ N'Họ Tên' , 

DiemDauVao  

FROM ​SinhVien 

ORDER BY ​DiemDauVao ​DESC 

 

10 Đưa ra danh sách tỉnh thành mà sinh viên có nơi sinh ở đó (không 

kể trùng lại) 

SELECT DISTINCT ​NoiSinh  

FROM ​SinhVien 

 

11 Đưa ra đối tượng và số lượng sinh viên tương ứng 

SELECT ​DoiTuong, ​COUNT​(MaSV) ​AS​ N'Số sinh viên'  

FROM ​SinhVien 

GROUP BY​ DoiTuong 

 

12 Đưa ra số tín chỉ và số lượng môn tương ứng 

SELECT ​SoTinChi, ​COUNT​(MaMon) ​AS ​N'Số môn'  

FROM ​MonHoc 

GROUP BY ​SoTinChi 

 

13 Đưa ra học kỳ và tổng số tín chỉ tương ứng của học kỳ đó 

SELECT ​HocKy, ​SUM​(SoTinChi) ​AS ​N'Tổng số tín chỉ'  

FROM ​MonHoc 

GROUP BY​ HocKy 

 

14 Đưa ra họ tên, ngày sinh, nơi sinh, điểm đầu vào của những sinh  viên có điểm nhỏ hơn 25 và có họ là Phan 

SELECT​ CONCAT_WS​(​' '​, HoDem, Ten) ​AS ​N'Họ Tên' , NgaySinh, NoiSinh,  DiemDauVao  

FROM ​SinhVien 

WHERE ​DiemDauVao < 25 ​AND ​HoDem ​LIKE ​N'Phan%' 

 

Trang 7

bằng chữ M 

SELECT ​CONCAT_WS​(​' '​, HoDem, Ten) ​AS ​N'Họ Tên' , NgaySinh, 

YEAR​(​GETDATE​()) - ​YEAR​(NgaySinh) ​AS ​N'Tuổi' 

FROM ​SinhVien 

WHERE ​Ten ​LIKE​ N'M%' 

 

16 Đưa ra mức điểm đầu vào trung bình 

SELECT ​AVG​(DiemDauVao) ​AS​ N'Điểm đầu vào trung bình'  

FROM ​SinhVien 

 

17 Đưa ra danh sách sinh viên sắp xếp theo tên, họ đệm tăng dần  SELECT ​HoDem, Ten, NgaySinh, NoiSinh, DiemDauVao  

FROM ​SinhVien 

ORDER BY​ HoDem, Ten ​DESC 

 

 

18 Đưa ra họ tên, ngày sinh, nơi sinh, điểm đầu vào của những sinh  viên có nơi sinh không phải là Hà Nội và điểm đầu vào nằm trong 

khoảng từ 18 đến 22 

SELECT ​CONCAT_WS(' ', HoDem, Ten) ​AS​ N'Họ Tên' , NgaySinh, NoiSinh,  DiemDauVao  

FROM ​SinhVien 

WHERE ​NoiSinh ​NOT LIKE​ N'Hà Nội' ​AND ​DiemDauVao ​BETWEEN ​18 

AND ​22 

 

Ngày đăng: 23/02/2019, 00:22

TỪ KHÓA LIÊN QUAN

w