Bài Tập SQL Cơ Bản | DEVMASTER

Nov - 2020 27 Bài tập SQL cơ bản Cẩm nang chia sẻ kiến thức

Để quản lý Thực tập nghề nghiệp của sinh viên, người ta xây dựng một cơ sở dữ liệu có tên là ThucTap gồm các sơ đồ quan hệ sau:

Khoa(makhoa char(10), tenkhoa char(30), dienthoai char(10)) GiangVien(magv int, hotengv char(30), luong decimal(5,2), makhoa char(10)) SinhVien(masv int, hotensv char(30), makhoa char(10), namsinh int, quequan char(30)) DeTai(madt char(10), tendt char(30), kinhphi int, NoiThucTap char(30)) HuongDan(masv int, madt char(10), magv int, ketqua decimal(5,2))

Ta sử dụng SSMS để tạo lập và nhập dữ liệu cho CSDL

Thực hiện các yêu cầu dưới đây :

  1. Đưa ra thông tin gồm mã số, họ tên và tên khoa của tất cả các giảng viên
  2. Đưa ra thông tin gồm mã số, họ tênvà tên khoa của các giảng viên của khoa ‘Dia ly’
  3. Cho biết số sinh viên của khoa ‘Cong nghe sinh hoc’
  4. Đưa ra danh sách gồm mã số, họ tên và tuổi của các sinh viên khoa ‘Toan hoc’
  5. Cho biết số giảng viên của khoa ‘Cong nghe sinh hoc’
  6. Cho biết thông tin về sinh viên không tham gia thực tập
  7. Đưa ra mã khoa, tên khoa và số giảng viên của mỗi khoa
  8. Cho biết số điện thoại của khoa mà sinh viên có tên ‘Le Van Son’ đang theo học
Tham khảo đáp án dưới đây nhé :

-- Đưa ra thông tin gồm mã số, họ tên và tên khoa của tất cả các giảng viên

SELECT GV.Magv, GV.Hotengv, K.Tenkhoa FROM TBLGiangVien GV join TBLKhoa K ON GV.Makhoa = K.Makhoa

-- Đưa ra thông tin gồm mã số, họ tên và tên khoa của các giảng viên của khoa 'Dia ly'

SELECT GV.maGV, GV.hoTenGV, K.tenKhoa FROM TBLGiangVien GV join TBLKhoa K ON GV.maKhoa = K.maKhoa

-- Cho biết số sinh viên của khoa 'Cong nghe sinh hoc'

SELECT COUNT(SV.maSV) AS So_SV FROM TBLSinhVien SV WHERE maKhoa='Bio'

-- Đưa ra danh sách gồm mã số, họ tên và tuổi của các sinh viên khoa 'Toan hoc'

SELECT SV.maSV, SV.hoTenSV, SV.namSinh, K.tenKhoa FROM TBLSinhVien SV JOIN TBLKhoa K ON SV.maKhoa = K.maKhoa WHERE K.tenKhoa = 'Toan hoc'

-- Cho biết số giảng viên của khoa 'Cong nghe sinh hoc'

SELECT COUNT(GV.maGV) AS So_GV FROM TBLGiangVien GV join TBLKhoa K ON GV.maKhoa = K.maKhoa WHERE K.tenKhoa='Cong nghe sinh hoc'

-- Cho biết thông tin về sinh viên không tham gia thực tập

SELECT SV.maSV , SV.hoTenSV, SV.namSinh, SV.queQuan FROM TBLSinhVien SV WHERE NOT EXISTS( SELECT HD.maSV FROM TBLHuongDan HD WHERE SV.maSV = HD.maSV)

-- Đưa ra mã khoa, tên khoa và số giảng viên của mỗi khoa

SELECT K.maKhoa,K.tenKhoa, COUNT(K.maKhoa) AS So_GV FROM TBLGiangVien GV JOIN TBLKhoa K ON GV.maKhoa = K.maKhoa GROUP BY K.maKhoa,K.tenKhoa

-- Cho biết số điện thoại của khoa mà sinh viên có tên 'Le Van Son' đang theo học

SELECT K.tenKhoa, K.dienThoai FROM TBLKhoa K join TBLSinhVien SV ON K.maKhoa = SV.maKhoa WHERE SV.hoTenSV = 'Le Van Son'

Devmaster Academy

Từ khóa » Bài Tập Cơ Bản Sql