FE Master 2026
FE Master

PHẦN A: KIẾN THỨC

PHASE 1: CƠ SỞ KHOA HỌC MÁY TÍNH (DAY 1-30)

1
Hệ đếm & Dữ liệuPart A
2
Số bù 2 & Số thực (Floating Point)Part A
3
Mạch Logic & Cổng LogicPart A
4
Kiến trúc CPUPart A
5
Bộ nhớ (Memory)Part A
6
Hệ điều hành (OS)Part A
7
Tiến trình & LuồngPart A
8
Mạng máy tính: OSI 7 LayerPart A
9
Internet & IP/TCPPart A
10
HTTP & DNSPart A
11
Database Cơ bản & Mô hình ERPart A
12
Chuẩn hóa Database (1NF → 3NF)Part A
13
SQL Cơ bản (SELECT, INSERT, UPDATE, DELETE)Part A
14
SQL Nâng cao (JOIN, GROUP BY, SubQuery)Part A
15
Transaction & ACIDPart A
16
Phát triển Phần mềm (SDLC & Models)Part A
17
Thiết kế Hệ thống (DFD, UML)Part A
18
Kiểm thử Phần mềm (Testing)Part A
19
Quản lý Dự án (PMBOK, WBS, Gantt)Part A
20
Review: Database & Phát triển PMPart A
21
Chiến lược Kinh doanh Chuyên sâu (SWOT, PPM)Part A
22
Marketing Mix & Data MiningPart A
23
Chiến lược Hệ thống & Cải tiến Quy trìnhPart A
24
Pháp luật IT & Hợp đồng (Quan trọng)Part A
25
Quản lý Dự án (PMBOK & EVM)Part A
26
Lưu trữ & Tính toán RAIDPart A
27
Công nghệ Mạng (LAN/WAN/Wifi)Part A
28
An toàn thông tin (Threats & Attacks)Part A
29
Mã hóa & Chữ ký sốPart A
30
Review Phase 1: Foundation (Tổng ôn tập)Part A

PHẦN A: KIẾN THỨC

PHASE 2: LOGIC & TỰ ĐỘNG HÓA (DAY 31 - 50)

31
Tư duy Thuật toán & Kỹ năng Trace CodePart A
32
Thuật toán Sắp xếp Cơ bản (Basic Sorting)Part A
33
Thuật toán Sắp xếp Nâng cao (Advanced Sorting)Part A
34
Thuật toán Tìm kiếm (Searching) & HashingPart A
35
Cấu trúc dữ liệu: Stack & QueuePart A
36
Cấu trúc dữ liệu: Array & Linked ListPart A
37
Graph (Đồ thị) & Thuật toán tìm đườngPart A
38
Tree (Cây) & Binary Search TreePart A
39
Độ phức tạp thuật toán (Big O Notation)Part A
40
Review Phase 2 Part 1: Algorithms MasterPart A
41
Tư duy Lập trình: Logic & Bảng Chân TrịPart A
42
Bộ nhớ: Stack vs Heap & Con trỏPart A
43
CTDL & Giải thuật: Độ phức tạp Big OPart A
44
OOP 1: Class, Object & Đóng góiPart A
45
OOP 2: Kế thừa & Đa hình (Inheritance & Polymorphism)Part A
46
Collections List/Set/Map - Hộp đựng đồ vạn năngPart A
47
Đệ quy (Recursion) - Giấc mơ trong giấc mơPart A
48
Kỹ thuật Bit (Bitwise) - Quyền năng tối thượngPart A
49
Design Patterns: Singleton & FactoryPart A
50
Tổng kết Phase 2: Chân dung Master CoderPart A

PHẦN A: KIẾN THỨC

PHASE 3: ĐI SÂU VÀO HỆ THỐNG (DAY 51 - 75)

51
Kiến trúc Máy tính: CPU & PipelinePart A
52
Bộ nhớ đệm: Cache InternalsPart A
53
Dữ liệu: Float & IEEE 754 Deep DivePart A
54
Hệ điều hành: Process InternalsPart A
55
Lập lịch CPU: Scheduling AlgorithmsPart A
56
Quản lý bộ nhớ: Virtual Memory & PagingPart A
57
Lưu trữ: Disk Anatomy & RAIDPart A
58
Ảo hóa & Containerization (Docker)Part A
59
Độ tin cậy & SRE BasicsPart A
60
Tổng ôn Hardware & OS ArchitectPart A
61
Mạng máy tính: Packet Analysis & WiresharkPart A
62
Giao vận: TCP Internals Deep DivePart A
63
Subnetting: VLSM & CIDR MasterclassPart A
64
Định tuyến: OSPF & BGP InternalsPart A
65
DNS & HTTP/2, HTTP/3 (QUIC)Part A
66
Database Indexing: B-Tree vs HashPart A
67
Normalization & DenormalizationPart A
68
NoSQL & Distributed DataPart A
69
Transaction & Concurrency ControlPart A
70
Review: System Design InterverviewPart A
71
An toàn thông tin: CIA & Risk ManagementPart A
72
Mật mã học: Encryption & HashingPart A
73
Xác thực: Authentication & OAuth 2.0Part A
74
Tấn công Web: SQL Injection & XSSPart A
75
Hạ tầng & Tổng ôn An toàn thông tinPart A

PHẦN A: KIẾN THỨC

PHASE 4: QUẢN LÝ IT & CHIẾN LƯỢC (DAY 76 - 85)

76
Quản lý Dự án I: PMBOK & Tam giác vàngPart A
77
Quản lý Thời gian: WBS & Đường Găng (CPM)Part A
78
Quản lý Chi phí: EVM (Earned Value Management)Part A
79
Quản lý Dịch vụ: ITIL & SLAPart A
80
Kiểm toán hệ thống & Kiểm soát nội bộPart A
81
Chiến lược Kinh doanh: SWOT & PPMPart A
82
Marketing & Tài chính: 4P & BSCPart A
83
Pháp luật IT: Bản quyền & Hợp đồngPart A
84
Tiêu chuẩn hóa: ISO & Code of ConductPart A
85
Tổng kết Phase 4: Quản lý & Chiến lượcPart A

PHẦN B: KỸ NĂNG

PHASE 5: TRẬN CHIẾN CUỐI CÙNG - LUYỆN ĐỀ PART B (DAY 86 - 100)

86
Part B Security: CIA & Xác thực UserPart B
87
Mã hóa: Đối xứng vs Bất đối xứngPart B
88
Chữ ký số & PKIPart B
89
Các loại tấn công mạng (Cyber Attacks)Part B
90
Hạ tầng bảo mật: Firewall, DMZ & VPNPart B
91
Pseudo-code Drills: Cấu trúc dữ liệu cơ bảnPart B
92
Pseudo-code Drills: Sorting & SearchingPart B
93
Pseudo-code Drills: Logic & BitwisePart B
94
Pseudo-code Drills: Kỹ thuật đệ quyPart B
95
Bài toán thực tế Part B: Nén dữ liệu RLEPart B
96
Part B Math: Tính toán phần cứngPart B
97
Part B Math: Tính toán Mạng (Subnet)Part B
98
Chiến thuật làm bài Part BPart B
99
Tổng ôn tập: Điểm mù kiến thứcPart B
100
FINAL DAY: Lời kết & Chúc may mắnPart B

Ver: 2026.02.21-v2

Học tậpThi thửHồ sơ
FE Master 2026
Đăng nhập
FE Master 2026

app.description

Liên kết hữu ích

  • Trang chủ
  • Blog & Tin tức
  • Đăng nhập

Pháp lý

  • Chính sách bảo mật
  • Điều khoản dịch vụ

Kết nối

  • Về chúng tôi
  • Liên hệ

© 2026 FE Master. All rights reserved.

Made with ♥ by Baryuu
Trang chủ
PHASE 1: CƠ SỞ KHOA HỌC MÁY TÍNH (DAY 1-30)/Ngày 14/100
DAY 14🇯🇵 SQL応用

SQL Nâng cao (JOIN, GROUP BY, SubQuery)

14%

Quảng cáo • Advertisement

📢 Sponsor Ad

Google AdSense

lesson.content.title

lesson.content.subtitle

🎯 Mục tiêu bài học

Sau bài này, bạn sẽ hiểu JOIN, GROUP BY, HAVING, và SubQuery — các kỹ thuật SQL nâng cao hay ra trong thi FE.

1. JOIN — Kết hợp nhiều bảng

🏠 Ví dụ: JOIN giống như ghép 2 danh sách

Danh sách 1: Sinh viên (MaSV, TenSV, MaKhoa). Danh sách 2: Khoa (MaKhoa, TenKhoa). JOIN = ghép chúng lại qua MaKhoa để biết sinh viên thuộc khoa nào!

Loại JOINKết quảDễ nhớ
INNER JOINChỉ lấy dòng khớp ở CẢ 2 bảngGiao (∩)
LEFT JOINHết bảng trái + khớp bảng phải (NULL nếu không khớp)Trái ưu tiên
RIGHT JOINHết bảng phải + khớp bảng tráiPhải ưu tiên
FULL OUTER JOINTất cả từ cả 2 bảngHợp (∪)
CROSS JOINTích Descartes (mỗi dòng A × mỗi dòng B)Tất cả tổ hợp
SELECT sv.TenSV, k.TenKhoa
FROM SinhVien sv
INNER JOIN Khoa k ON sv.MaKhoa = k.MaKhoa;

2. GROUP BY & Aggregate Functions

HàmChức năngVí dụ
COUNT(*)Đếm số dòngĐếm SV mỗi khoa
SUM(cot)Tính tổngTổng doanh thu
AVG(cot)Trung bìnhĐiểm TB mỗi lớp
MAX(cot)Giá trị lớn nhấtĐiểm cao nhất
MIN(cot)Giá trị nhỏ nhấtLương thấp nhất
SELECT MaKhoa, COUNT(*) as SoSV, AVG(Diem) as DiemTB
FROM SinhVien
GROUP BY MaKhoa
HAVING AVG(Diem) >= 7.0
ORDER BY DiemTB DESC;

⚠️ WHERE vs HAVING — Hay ra thi!

WHERE: Lọc TRƯỚC khi nhóm (GROUP BY). Không dùng được aggregate function.

HAVING: Lọc SAU khi nhóm. Dùng được COUNT, AVG, SUM...

3. SubQuery (Truy vấn lồng)

-- Tìm SV có điểm cao hơn trung bình
SELECT TenSV, Diem FROM SinhVien
WHERE Diem > (SELECT AVG(Diem) FROM SinhVien);

📝 Tóm tắt nhanh

  • INNER JOIN = chỉ lấy khớp | LEFT JOIN = ưu tiên trái
  • GROUP BY nhóm dữ liệu → dùng với COUNT, SUM, AVG
  • WHERE lọc trước GROUP BY | HAVING lọc sau GROUP BY
  • SubQuery: truy vấn trong truy vấn

🎯 Câu hỏi ôn thi FE #3

Hỏi: Viết SQL đếm số sinh viên mỗi khoa, chỉ hiển thị khoa có hơn 50 SV?

Đáp: SELECT MaKhoa, COUNT(*) FROM SinhVien GROUP BY MaKhoa HAVING COUNT(*) > 50

Quảng cáo • Advertisement

📢 Ad Space

Google AdSense

Day 13Day 15