
Quản lý & truy vấn dữ liệu với SQL
Trong thế giới định hướng bởi dữ liệu, SQL (Structured Query Language) không chỉ là một kỹ năng – nó là ngôn ngữ giao tiếp toàn cầu và không thể thiếu. Bất kể bạn sử dụng công cụ BI, ngôn ngữ lập trình hay nền tảng dữ liệu nào, sự thành thạo SQL vẫn luôn là nền tảng cốt lõi. Khóa học này được thiết kế để đưa bạn từ việc biết viết những câu lệnh cơ bản đến việc thực sự làm chủ SQL, trang bị cho bạn tư duy của một chuyên gia có khả năng kiến tạo, quản lý và khai thác dữ liệu một cách chuyên nghiệp.
Chương trình sẽ đưa bạn đi sâu vào ba trụ cột của một chuyên gia SQL. Đầu tiên, bạn sẽ làm chủ các kỹ thuật truy vấn phân tích nâng cao, sử dụng Common Table Expressions (CTEs) để viết code sạch sẽ, dễ bảo trì và Window Functions để giải quyết các bài toán phức tạp như xếp hạng, phân tích theo kỳ. Tiếp theo, bạn sẽ học nghệ thuật tối ưu hóa hiệu suất, biết cách “nhìn thấu” cơ chế hoạt động của cơ sở dữ liệu qua Execution Plan và áp dụng Index một cách chiến lược để xử lý hàng triệu bản ghi trong chớp mắt. Cuối cùng, bạn sẽ được trang bị kỹ năng làm việc với các kiểu dữ liệu hiện đại như JSON và Array ngay trong SQL.
Thời lượng: 30h


Hình thức đào tạo:
-
- Đào tạo trực tiếp tại lớp học
- Đào tạo trực tuyến
- Đào tạo hybrid (trực tuyến kết hợp trực tiếp)
- Đào tạo tại văn phòng khách hàng
KẾT QUẢ ĐẠT ĐƯỢC:
-
LÀM CHỦ CÁC KỸ THUẬT TRUY VẤN SQL NÂNG CAOThành thạo sử dụng CTEs để tổ chức các truy vấn lồng và áp dụng Window Functions để giải quyết các bài toán phức tạp.
-
TỐI ƯU HÓA HIỆU SUẤT VÀ HIỂU SÂU VỀ CSDLBiết cách phân tích kế hoạch thực thi (EXPLAIN PLAN) và sử dụng Index một cách chiến lược để tăng tốc độ truy vấn trên các tập dữ liệu lớn.
-
XỬ LÝ CÁC KIỂU DỮ LIỆU HIỆN ĐẠI TRONG SQLTự tin truy vấn và xử lý các kiểu dữ liệu phức tạp như JSON và Array ngay trong CSDL quan hệ, một kỹ năng thiết yếu trong các hệ thống hiện đại.
-
THIẾT KẾ VÀ QUẢN LÝ CẤU TRÚC CƠ SỞ DỮ LIỆUCó khả năng tự tay thiết kế và tạo lập các bảng dữ liệu, định nghĩa các ràng buộc và sử dụng các lệnh DDL, DML để quản lý cấu trúc CSDL.
-
NỀN TẢNG VỮNG CHẮC CHO PHÂN TÍCH VÀ TRỰC QUAN DỮ LIỆUChuẩn bị cho việc tích hợp SQL với Excel, Python hoặc Power BI để phân tích báo cáo chuyên sâu.

Đối tượng tham gia

Sinh viên
Cần kỹ năng truy vấn dữ liệu bằng SQL để phục vụ cho các đồ án và công việc.

Người mới lập trình
Muốn xây dựng một nền tảng vững chắc để hiểu và làm việc hiệu quả với cơ sở dữ liệu.

Nhân sự văn phòng
Đã biết Excel, cần bổ sung kỹ năng SQL để trở thành chuyên gia dữ liệu toàn diện.

Người chuyển ngành
Thường xuyên làm việc với dữ liệu và cần khai thác thông tin từ các hệ thống báo cáo.
Nội dung khóa học
1. Viết SQL có cấu trúc với CTEs
-
- Ôn tập Subquery và CTE:
- Khi nào nên dùng Subquery, ưu nhược điểm so với CTE.
- Tại sao CTE (WITH … AS) lại trở thành “chuẩn” trong các hệ thống dữ liệu lớn.
- Thực hành chuyển đổi Subquery thành CTE:
- Chuyển hóa các truy vấn lồng nhau (nested queries) thành CTE, làm tăng khả năng tái sử dụng, dễ debug và kiểm thử.
- Ứng dụng CTE cho phân tích nhiều bước:
- Thiết kế các bước xử lý tuần tự, chia nhỏ bài toán phức tạp thành nhiều khối logic – giúp quản lý dễ dàng và nâng cấp hiệu quả.
- Ôn tập Subquery và CTE:
2. Làm chủ Window Functions
-
- Cấu trúc Window Function:
- Giải thích cú pháp OVER(), PARTITION BY, ORDER BY – xác định “cửa sổ” phân tích trên tập dữ liệu.
- Hàm xếp hạng:
- ROW_NUMBER, RANK, DENSE_RANK, NTILE – ứng dụng tìm top sản phẩm/khách hàng, chia nhóm dữ liệu động.
- Hàm điều hướng (Navigation):
- LEAD, LAG, FIRST_VALUE, LAST_VALUE – lấy giá trị trước/sau, phân tích so sánh theo kỳ.
- Hàm tổng hợp trên cửa sổ:
- SUM(), AVG(), COUNT() OVER (…) để tính doanh số lũy kế, trung bình động, xu hướng phát triển.
- Thực hành:
- Xây dựng báo cáo ranking, moving average, phân tích tăng trưởng, giữ chân khách hàng qua từng kỳ.
- Cấu trúc Window Function:
3. Xử lý các kiểu dữ liệu phức tạp
-
- Truy vấn và thao tác với JSON:
- Đọc dữ liệu dạng key-value, thao tác với nested object, trích xuất trường sâu trong cột JSON.
- Viết truy vấn chuyển đổi JSON thành bảng phân tích, ứng dụng trên PostgreSQL, BigQuery…
- Kiểu dữ liệu Array:
- Khái niệm mảng trong SQL – khi nào nên sử dụng.
- Thao tác UNNEST để “nổ” mảng thành từng dòng, sử dụng CARDINALITY để đếm số phần tử.
- So sánh, lồng ghép kiểu dữ liệu phức tạp:
- Kết hợp JSON, Array với Window Functions, CTE để phân tích nâng cao.
- Truy vấn và thao tác với JSON:
4. Tối ưu hóa Hiệu suất Truy vấn
-
- Vòng đời của một câu truy vấn SQL:
- Từ Parsing, Planning, đến Execution – cơ chế máy chủ thực thi câu lệnh SQL ra sao.
- Đọc & phân tích EXPLAIN PLAN:
- Biết cách nhận diện “nút thắt cổ chai”, các phép toán tiêu tốn tài nguyên (Full Table Scan, Hash Join…).
- Phân tích chi phí từng bước, xác định vị trí cần tối ưu.
- Hiểu sâu về Index:
- Giới thiệu B-Tree Index, các loại Index phổ biến.
- Khi nào nên – không nên tạo Index để đạt hiệu quả tối ưu.
- Chiến lược tối ưu hóa truy vấn:
- Chọn đúng kiểu dữ liệu, hạn chế dùng SELECT *, ưu tiên truy vấn chỉ lấy trường cần thiết.
- Vòng đời của một câu truy vấn SQL:
5. BÀI THỰC HÀNH CUỐI KHÓA
Phân tích Toàn diện Hành vi Người dùng trên một Nền tảng E-commerce
-
- Yêu cầu:
-
-
- Chuẩn bị dữ liệu: Sử dụng CTEs để join và làm sạch dữ liệu từ các bảng users, orders, order_items, products.
- Phân tích Xếp hạng: Sử dụng Window Functions (RANK, DENSE_RANK) để tìm ra top 10 khách hàng chi tiêu nhiều nhất và top 5 sản phẩm bán chạy nhất trong mỗi danh mục.
- Phân tích Theo thời gian: Sử dụng Window Functions (LAG, running SUM) để tính toán sự tăng trưởng doanh thu so với tháng trước và doanh thu lũy kế theo từng tháng.
- Phân tích Cohort: Xây dựng một bảng phân tích giữ chân khách hàng theo tháng đăng ký đầu tiên.
- Tối ưu hóa (Bonus): Phân tích EXPLAIN PLAN của một trong các câu lệnh trên và đề xuất cách tạo INDEX để cải thiện hiệu suất.
-
LỊCH KHAI GIẢNG
(Đang cập nhật)

Bài viết liên quan
