SQL cho phân tích dữ liệu

Hướng dẫn SQL cho phân tích dữ liệu

Hướng dẫn rõ ràng, thực tế, viết cho người học.

30 tháng 10, 2026 · 12 phút đọc

Câu lệnh SQL cơ bản: SELECT, WHERE, ORDER BY, GROUP BY và JOIN cho người mới

SQL cho người mới bắt đầu: học các câu lệnh SQL cơ bản từng bước với ví dụ thật trên cơ sở dữ liệu chuyến bay, từ SELECT đến JOIN, kèm những lỗi hay gặp.

30 tháng 10, 2026 · 12 phút đọc

Lộ trình data analyst: học gì, theo thứ tự nào và mất bao lâu

Lộ trình data analyst thực tế: SQL trước, rồi bảng tính, thống kê cơ bản, BI, Python sau, portfolio và phỏng vấn, kèm phần có thể bỏ qua và thời gian ước lượng.

30 tháng 10, 2026 · 12 phút đọc

GROUP BY và HAVING trong SQL: khác nhau giữa WHERE và HAVING, kèm ví dụ

GROUP BY và HAVING trong SQL làm gì, WHERE và HAVING khác nhau thế nào, thứ tự SQL thực thi truy vấn và lỗi khiến kết quả nhóm báo lỗi hoặc âm thầm sai.

30 tháng 10, 2026 · 14 phút đọc

ROW_NUMBER, RANK và DENSE_RANK trong SQL khác nhau thế nào khi có giá trị bằng nhau

ROW_NUMBER, RANK, DENSE_RANK chỉ khác nhau khi có giá trị bằng nhau. So sánh trong một bảng, chọn hàm cho top N mỗi nhóm, khử trùng, xếp hạng; kèm NTILE.

30 tháng 10, 2026 · 11 phút đọc

Hàm tổng hợp trong SQL: COUNT, SUM, AVG, MIN, MAX kèm ví dụ

Hàm tổng hợp SQL: COUNT(*), COUNT(cột), COUNT(DISTINCT), SUM, AVG, MIN, MAX, cách xử lý NULL, dùng với GROUP BY và FILTER, và những cái bẫy làm sai tổng.

30 tháng 10, 2026 · 15 phút đọc

CASE WHEN trong SQL: câu lệnh điều kiện, phân loại và tổng hợp có điều kiện

CASE WHEN trong SQL: CASE đơn giản và CASE tìm kiếm, chia nhóm giá trị, sắp xếp tùy chỉnh, xử lý NULL và tổng hợp có điều kiện với SUM, COUNT và FILTER.

30 tháng 10, 2026 · 15 phút đọc

SQL cheat sheet cho data analyst: mọi mệnh đề và hàm kèm ví dụ chạy được

SQL cheat sheet gọn cho data analyst: SELECT đến ORDER BY, bộ lọc, hàm tổng hợp, JOIN, CASE, NULL, truy vấn con, CTE, hàm cửa sổ, ngày giờ, chuỗi, có ví dụ.

30 tháng 10, 2026 · 15 phút đọc

CTE trong SQL (mệnh đề WITH): viết truy vấn thành từng bước dễ đọc

Cách dùng CTE trong SQL (mệnh đề WITH): cú pháp, nối nhiều bước, dùng lại kết quả, CTE đệ quy, so sánh với truy vấn con và bảng tạm, lỗi thường gặp.

30 tháng 10, 2026 · 12 phút đọc

Hàm xử lý ngày tháng trong SQL: EXTRACT, date_trunc, cộng khoảng thời gian và tính số ngày giữa hai ngày

Hàm xử lý ngày tháng SQL cho phân tích: EXTRACT, date_trunc, INTERVAL, tính khoảng cách giữa hai ngày, kèm ví dụ thật và khác biệt PostgreSQL với DuckDB.

30 tháng 10, 2026 · 14 phút đọc

Tìm và xóa dữ liệu trùng lặp trong SQL, kèm ví dụ

Tìm dòng trùng bằng GROUP BY và HAVING COUNT(*) > 1, giữ bản đầu bằng ROW_NUMBER hoặc DISTINCT ON, rồi xóa phần còn lại trong SQL Server, MySQL, PostgreSQL.

30 tháng 10, 2026 · 14 phút đọc

Câu hỏi phỏng vấn SQL cho data analyst: 20 câu có đáp án

20 câu hỏi phỏng vấn SQL cho data analyst, cả lý thuyết và viết truy vấn: JOIN, NULL, GROUP BY, hàm cửa sổ, giá trị lớn thứ N, trung vị, kèm đáp án mẫu.

30 tháng 10, 2026 · 13 phút đọc

JOIN trong SQL: INNER, LEFT, FULL, self join và anti join kèm ví dụ

JOIN trong SQL trên bảng thật: INNER, LEFT, FULL OUTER, self join, anti join, vì sao JOIN nhân bản dòng và cách tránh đếm trùng trong SUM và COUNT.

30 tháng 10, 2026 · 15 phút đọc

Hàm LAG và LEAD trong SQL: lấy giá trị dòng trước và dòng sau, kèm ví dụ

LAG lấy giá trị dòng trước, LEAD lấy dòng sau: offset, giá trị mặc định, so với kỳ trước, thời gian giữa hai sự kiện, PARTITION BY, chia phiên và lỗi hay gặp.

30 tháng 10, 2026 · 13 phút đọc

Lệnh LIKE trong SQL: ký tự đại diện % và _, ILIKE, NOT LIKE và tìm tiếng Việt có dấu

Cách dùng LIKE trong SQL: ký tự đại diện % và _, ILIKE, NOT LIKE và NULL, thoát ký tự, tìm chữ có dấu, LIKE so với = và khi nào LIKE dùng được index.

30 tháng 10, 2026 · 16 phút đọc

NULL trong SQL: IS NULL, COALESCE, NULL trong JOIN, phép đếm và phép so sánh

NULL trong SQL: vì sao = NULL không tìm thấy gì, IS NULL, IS DISTINCT FROM, NULL trong COUNT và AVG, COALESCE, NULLIF, LEFT JOIN và cái bẫy NOT IN.

30 tháng 10, 2026 · 15 phút đọc

ORDER BY trong SQL: sắp xếp tăng dần, giảm dần, nhiều cột, NULLS LAST và top N

ORDER BY trong SQL: ASC và DESC, nhiều cột, NULLS FIRST và LAST, sắp theo bí danh hay CASE, top N với LIMIT và giá trị bằng nhau, sắp xếp tiếng Việt.

30 tháng 10, 2026 · 14 phút đọc

Pivot trong SQL: chuyển dòng thành cột (và unpivot) kèm ví dụ

Chuyển dòng thành cột trong SQL bằng CASE hoặc FILTER, cú pháp PIVOT và UNPIVOT trong DuckDB và SQL Server, crosstab của PostgreSQL và vì sao cột động khó.

30 tháng 10, 2026 · 13 phút đọc

Bài tập SQL có lời giải: 15 bài từ cơ bản đến nâng cao

15 bài tập SQL có lời giải trên cơ sở dữ liệu hãng hàng không thật: từ SQL cơ bản đến JOIN, HAVING, truy vấn con, hàm cửa sổ, kèm kết quả chạy thật.

30 tháng 10, 2026 · 12 phút đọc

Self join trong SQL: bảng tự nối với chính nó, kèm ví dụ thực tế

Self join là JOIN một bảng với chính nó qua hai bí danh. Ví dụ: cặp không trùng, chuyến bay nối chuyến, khứ hồi, dòng lịch sử và khi nào nên dùng LAG/LEAD.

30 tháng 10, 2026 · 11 phút đọc

Hàm chuỗi trong SQL: CONCAT, SUBSTRING, REPLACE, UPPER, TRIM và hơn thế

Hàm chuỗi SQL để làm sạch và biến đổi văn bản: CONCAT và ||, SUBSTRING, SPLIT_PART, REPLACE, UPPER, TRIM, LPAD, regex, kèm ví dụ chạy thật.

30 tháng 10, 2026 · 16 phút đọc

Truy vấn con trong SQL (subquery): trong WHERE, SELECT và FROM, kèm ví dụ

Truy vấn con trong SQL ở WHERE, SELECT và FROM: trả về một giá trị hay danh sách, IN, EXISTS, truy vấn tương quan, bảng dẫn xuất và cái bẫy NOT IN với NULL.

30 tháng 10, 2026 · 13 phút đọc

SQL và Excel trong phân tích dữ liệu: mỗi công cụ mạnh ở đâu và cách chuyển sang SQL

So sánh SQL và Excel cho phân tích dữ liệu: công cụ nào thắng ở việc gì, VLOOKUP, pivot table, IF và SUMIFS tương ứng JOIN, GROUP BY, WHERE và CASE ra sao.

30 tháng 10, 2026 · 13 phút đọc

Hàm cửa sổ (window function) trong SQL: ROW_NUMBER, RANK, LAG và tổng lũy kế

Hàm cửa sổ trong SQL: OVER và PARTITION BY, ROW_NUMBER, RANK, top N mỗi nhóm, tổng lũy kế, trung bình trượt, LAG/LEAD và khung cửa sổ, kèm kết quả thật.

30 tháng 10, 2026 · 11 phút đọc

UNION và UNION ALL trong SQL khác nhau thế nào (kèm INTERSECT và EXCEPT)

UNION loại bỏ dòng trùng, UNION ALL giữ tất cả. Khi nào dùng cái nào, INTERSECT và EXCEPT, quy tắc kết hợp truy vấn và cái bẫy làm sai lệch tổng.