Trang chủ>  Blog >  Kiến thức chuyên môn >  Làm sạch dữ liệu bằng SQL: NULL, trùng lặp, chuẩn hóa

Làm sạch dữ liệu bằng SQL: NULL, trùng lặp, chuẩn hóa


Khi làm phân tích dữ liệu, điều đầu tiên bạn cần làm không phải là vẽ biểu đồ, mà là làm sạch dữ liệu. Dữ liệu bẩn có thể đến từ form điền tay, hệ thống nhập liệu lỗi, hoặc sai sót khi merge nhiều bảng. → Trong bài viết này, bạn sẽ học cách dùng SQL để: • Xử lý giá trị NULL • Xoá hoặc lọc dòng trùng lặp • Chuẩn hóa dữ liệu trước khi phân tích hoặc đưa vào Power BI/Tableau

  301 lượt xem

Nội dung bài viết

1. Xử lý NULL – giá trị thiếu

NULL là giá trị “không xác định” trong SQL, và cần xử lý đúng để tránh sai số.

📌 a. Thay thế NULL bằng giá trị mặc định

SELECT

  customer_name,

  COALESCE(phone_number, 'Chưa cập nhật') AS phone_display

FROM customers;

COALESCE() sẽ trả về giá trị đầu tiên khác NULL.

📌 b. Lọc bỏ dòng có NULL ở trường quan trọng

SELECT *

FROM orders

WHERE amount IS NOT NULL;

📌 c. Tính toán vẫn đúng khi có NULL

SELECT

  AVG(amount) AS avg_order

FROM orders

WHERE amount IS NOT NULL;

2. Loại bỏ dòng trùng lặp

Khi import từ nhiều nguồn, bạn dễ gặp dữ liệu bị duplicate.

🧹 a. Chỉ giữ dòng duy nhất (DISTINCT)

SELECT DISTINCT customer_id, email

FROM customers;

📌 Dùng khi bạn cần loại bỏ các dòng trùng hệt nhau.

🧼 b. Giữ bản ghi mới nhất theo ID

SELECT *

FROM (

  SELECT *,

         ROW_NUMBER() OVER(PARTITION BY customer_id ORDER BY updated_at DESC) AS rn

  FROM customers

) sub

WHERE rn = 1;

→ Cách này giữ lại bản ghi mới nhất cho mỗi customer_id.

3. Chuẩn hóa dữ liệu: chữ hoa, định dạng, số điện thoại…

✨ a. Chuẩn hóa chữ (UPPER, LOWER, INITCAP)

SELECT

  LOWER(email) AS email_lower,

  INITCAP(customer_name) AS name_formatted

FROM customers;

INITCAP() viết hoa chữ cái đầu từng từ (tùy hệ CSDL: dùng trong Oracle, Snowflake...)

✨ b. Xoá khoảng trắng dư

SELECT

  TRIM(full_name) AS cleaned_name

FROM customers;

✨ c. Format số điện thoại

SELECT

  REGEXP_REPLACE(phone_number, '[^0-9]', '', 'g') AS phone_cleaned

FROM customers;

Dùng REGEXP_REPLACE để xóa ký tự không phải số ((), -, dấu cách…)

4. Checklist làm sạch dữ liệu bằng SQL

✅ Kiểm tra & xử lý NULL:

  • Dùng COALESCE() để thay giá trị
  • Lọc dòng thiếu dữ liệu quan trọng

✅ Xử lý trùng lặp:

  • Dùng DISTINCT
  • Kết hợp ROW_NUMBER() để giữ bản ghi đúng

✅ Chuẩn hóa:

  • Dùng LOWER(), TRIM(), REGEXP_REPLACE()
  • Format định dạng ngày, số điện thoại, tên khách hàng

Học SQL làm sạch dữ liệu chuyên nghiệp tại MCI Academy

Làm sạch dữ liệu là bước nền tảng quan trọng nhất trong Data Analytics.
Dữ liệu bẩn = insight sai = quyết định sai.

🎓 Khóa học SQL for Newbies – MCI Academy

  • Lộ trình 30 ngày: Từ SELECT → JOIN → Cleaning → Window Function
  • Dữ liệu thực chiến: CRM, đơn hàng, phiếu khảo sát, hệ thống loyalty
  • Mentor 1–1: Góp ý từng truy vấn, giúp bạn hiểu sâu logic
  • 200+ bài tập + checklist mẫu + file luyện SQL sạch

📞 Hotline: 0352.433.233
📧 Email: cskh@mcivietnam.com

👉 Đăng ký ngay để thành thạo làm sạch dữ liệu bằng SQL – và phân tích đúng ngay từ bước đầu tiên!

Chương trình đào tạo: Phân tích dữ liệu, Khoa học dữ liệu, Kĩ sư dữ liệu, Lập trình ứng dụng.
Chất lượng nhất - Uy tín nhất - Nhiều học viên tin tưởng nhất
Hơn 8000 học viên ưu tú đã tốt nghiệp
Đăng ký tư vấn khóa học

*Vui lòng nhập số điện thoại của bạn

*Vui lòng nhập họ tên của bạn

*Vui lòng chọn địa điểm học

*Vui lòng chọn giới tính

*Vui lòng chọn 1 trường


Các bài viết liên quan


SQL là gì? Vì sao SQL là kỹ năng bắt buộc cho Data Analyst

Trong bài viết này, chúng ta sẽ cùng tìm hiểu SQL là gì, vì sao nó là kỹ năng bắt buộc cho Data Analyst, và cách bắt đầu học SQL hiệu quả.

Lộ trình 30 ngày chinh phục SQL

Bài viết này tổng hợp lộ trình 30 ngày dựa trên các nền tảng miễn phí (SQLBolt, W3Schools, HackerRank, LeetCode, PostgreSQL Exercises, Oracle Live SQL) và khóa học SQL tại MCI

5 kỹ năng vàng để trở thành Data Analyst chuyên nghiệp

Data Analyst đang trở thành một trong những nghề được săn đón nhất trong kỷ nguyên dữ liệu. Nhưng để thực sự thành công, bạn không chỉ cần biết cách xử lý số liệu mà còn phải trang bị cho mình bộ kỹ năng toàn diện – từ kỹ thuật, phân tích đến giao tiếp. Bài viết này sẽ giúp bạn khám phá 5 kỹ năng quan trọng nhất mà mọi Data Analyst chuyên nghiệp đều phải thành thạo.

Các bài viết liên quan