Bài 1: Giới thiệu về Trình quản lý quảng cáo
CÁC LỆNH TRUY VẤN CƠ BẢN TRONG SQL SERVER
1. Lệnh SELECT – Lấy dữ liệu từ bảng
Lệnh SELECT được sử dụng để truy vấn dữ liệu từ một hoặc nhiều bảng.
Cú pháp cơ bản:
SELECT column1, column2, ... FROM table_name;
Ví dụ:
Lấy tất cả dữ liệu từ bảng SinhVien:
SELECT * FROM SinhVien;
Lấy danh sách họ tên và email của sinh viên:
SELECT HoTen, Email FROM SinhVien;
2. Lệnh INSERT – Thêm dữ liệu vào bảng
Lệnh INSERT dùng để thêm bản ghi mới vào bảng.
Cú pháp:
INSERT INTO table_name (column1, column2, ...) VALUES (value1, value2, ...);
Ví dụ:
Thêm một sinh viên mới vào bảng SinhVien:
INSERT INTO SinhVien (HoTen, NgaySinh, GioiTinh, Email)
VALUES ('Nguyen Van A', '2000-05-10', 1, 'nguyenvana@email.com');
3. Lệnh UPDATE – Cập nhật dữ liệu
Lệnh UPDATE được dùng để chỉnh sửa dữ liệu trong bảng.
Cú pháp:
UPDATE table_name SET column1 = value1, column2 = value2 WHERE condition;
Ví dụ:
Cập nhật email của sinh viên có ID = 1:
UPDATE SinhVien SET Email = 'newemail@email.com' WHERE ID = 1;
4. Lệnh DELETE – Xóa dữ liệu
Lệnh DELETE được dùng để xóa một hoặc nhiều bản ghi khỏi bảng.
Cú pháp:
DELETE FROM table_name WHERE condition;
Ví dụ:
Xóa sinh viên có ID = 1:
DELETE FROM SinhVien WHERE ID = 1;
5. Lọc dữ liệu với WHERE
Lệnh WHERE được sử dụng để lọc dữ liệu theo điều kiện.
Cú pháp:
SELECT * FROM table_name WHERE condition;
Ví dụ:
Lấy danh sách sinh viên sinh sau năm 2000:
SELECT * FROM SinhVien WHERE NgaySinh > '2000-01-01';
6. Sắp xếp kết quả với ORDER BY
Lệnh ORDER BY giúp sắp xếp kết quả theo thứ tự tăng dần (ASC) hoặc giảm dần (DESC).
Cú pháp:
SELECT * FROM table_name ORDER BY column_name ASC|DESC;
Ví dụ:
Sắp xếp sinh viên theo ngày sinh giảm dần:
SELECT * FROM SinhVien ORDER BY NgaySinh DESC;
7. Loại bỏ giá trị trùng lặp với DISTINCT
Lệnh DISTINCT giúp loại bỏ các bản ghi trùng lặp.
Cú pháp:
SELECT DISTINCT column_name FROM table_name;
Ví dụ:
Lấy danh sách các khoa không trùng lặp:
SELECT DISTINCT TenKhoa FROM Khoa;
8. Tìm kiếm dữ liệu với LIKE
Lệnh LIKE được sử dụng để tìm kiếm dữ liệu theo mẫu.
Cú pháp:
SELECT * FROM table_name WHERE column_name LIKE pattern;
Các ký tự đại diện:
%: đại diện cho bất kỳ chuỗi ký tự nào._: đại diện cho một ký tự duy nhất.
Ví dụ:
Lấy danh sách sinh viên có họ "Nguyen":
SELECT * FROM SinhVien WHERE HoTen LIKE 'Nguyen%';
Lấy danh sách sinh viên có tên bắt đầu bằng chữ "A":
SELECT * FROM SinhVien WHERE HoTen LIKE 'A%';
Tóm tắt
| Lệnh SQL | Chức năng |
|---|---|
SELECT |
Truy vấn dữ liệu |
INSERT |
Thêm dữ liệu |
UPDATE |
Cập nhật dữ liệu |
DELETE |
Xóa dữ liệu |
WHERE |
Lọc dữ liệu |
ORDER BY |
Sắp xếp dữ liệu |
DISTINCT |
Loại bỏ dữ liệu trùng |
LIKE |
Tìm kiếm dữ liệu theo mẫu |
BÀI TẬP THỰC HÀNH CÁC LỆNH CƠ BẢN TRONG SQL SERVER
Chủ đề: Quản lý cơ sở đào tạo
Yêu cầu 1: Thêm dữ liệu vào bảng (INSERT INTO)
- Thêm 3 cơ sở đào tạo mới vào bảng
CoSoDaoTao. - Thêm 5 giảng viên vào bảng
GiangVien, đảm bảo rằng họ thuộc các cơ sở đào tạo có sẵn. - Thêm 5 khóa học mới vào bảng
KhoaHoc, mỗi khóa học thuộc một cơ sở đào tạo khác nhau.
Yêu cầu 2: Truy vấn dữ liệu (SELECT)
- Lấy danh sách tất cả các cơ sở đào tạo, sắp xếp theo tên cơ sở tăng dần.
- Lấy danh sách giảng viên có hệ số lương từ 2.0 trở lên.
- Tìm danh sách giảng viên thuộc cơ sở đào tạo có tên chứa chữ “Hà Nội”.
- Lấy danh sách khóa học có thời gian học từ 50 giờ trở lên.
Yêu cầu 3: Cập nhật dữ liệu (UPDATE)
- Cập nhật số điện thoại của cơ sở đào tạo có
ID = 1. - Tăng hệ số lương của tất cả giảng viên có mức lương dưới 2.0 lên 2.0.
- Cập nhật thời gian học của khóa học “Lập trình C#” thành 80 giờ.
Yêu cầu 4: Xóa dữ liệu (DELETE)
- Xóa khóa học có thời gian học dưới 40 giờ.
- Xóa giảng viên có hệ số lương dưới 1.5.
- Xóa cơ sở đào tạo không có giảng viên nào.
DỮ LIỆU MẪU
1. Bảng CoSoDaoTao (Cơ sở đào tạo)
| ID | TenCoSo | DiaChi | SoDienThoai |
|---|---|---|---|
| 1 | Đại học Công Nghệ | Hà Nội | 0241234567 |
| 2 | Đại học Bách Khoa | TP. HCM | 0287654321 |
| 3 | Đại học Khoa Học Tự Nhiên | Đà Nẵng | 0236123456 |
| 4 | Đại học Sư Phạm | Hà Nội | 0246789123 |
| 5 | Đại học Quốc Gia | TP. HCM | 0289876543 |
2. Bảng GiangVien (Giảng viên)
| ID | HoTen | SoDienThoai | HeSoLuong | idCoSo | |
|---|---|---|---|---|---|
| 1 | Nguyễn Văn An | an.nguyen@daihoccongnghe.edu.vn | 0912345678 | 2.5 | 1 |
| 2 | Trần Thị Bích | bich.tran@daihocbachkhoa.edu.vn | 0987654321 | 1.8 | 2 |
| 3 | Lê Văn Cường | cuong.le@daihockhtn.edu.vn | 0356798456 | 3.2 | 3 |
| 4 | Hoàng Thị Dung | dung.hoang@daihochanoi.edu.vn | 0345678912 | 2.0 | 4 |
| 5 | Phạm Quốc Đạt | dat.pham@daihocquocgia.edu.vn | 0398765432 | 2.8 | 5 |
3. Bảng KhoaHoc (Khóa học)
| ID | TenKhoaHoc | ThoiGian | idCoSo |
|---|---|---|---|
| 1 | Lập trình C# | 60 | 1 |
| 2 | Phát triển Web với JavaScript | 80 | 2 |
| 3 | Khoa học dữ liệu cơ bản | 50 | 3 |
| 4 | Trí tuệ nhân tạo | 100 | 4 |
| 5 | Quản lý dự án phần mềm | 40 | 5 |
NỘP FILE SQL TOÀN BỘ CÁC NỘI DUNG TRẢ LỜI