Có một sự thật khá thú vị: rất nhiều Business Analyst nói rằng mình “biết SQL”, nhưng khi vào dự án thực tế lại chỉ dừng ở mức copy query của người khác. Vấn đề không nằm ở việc BA phải trở thành Data Analyst, mà ở chỗ BA cần đủ hiểu để tự kiểm chứng dữ liệu và đặt câu hỏi đúng.
 
Trong bối cảnh doanh nghiệp vận hành dựa trên dữ liệu, kỹ năng SQL cơ bản không còn là “điểm cộng” mà dần trở thành nền tảng. Theo định hướng năng lực phân tích dữ liệu trong BABOK của International Institute of Business Analysis, BA cần có khả năng làm việc với thông tin và dữ liệu để hỗ trợ ra quyết định. SQL chính là một trong những công cụ giúp làm điều đó hiệu quả.
 
Bài viết này sẽ đi thẳng vào các hàm và nhóm câu lệnh SQL phổ biến nhất mà một BA nên biết, kèm theo ví dụ thực tế trong bối cảnh dự án. Hãy cùng BAC khám phá trong bài viết dưới đây.

1. SELECT – Nền tảng của mọi truy vấn
SELECT là câu lệnh cơ bản nhất, dùng để lấy dữ liệu từ bảng. Không có SELECT thì không có phân tích.
Ví dụ thực tế: bạn muốn xem danh sách user đăng ký trong tháng 1.
Ví dụ thực tế 1
Với BA, SELECT không chỉ là “lấy dữ liệu”, mà là cách trả lời những câu hỏi như:
  • Có bao nhiêu người dùng mới?
  • Đơn hàng gần nhất là khi nào?
  • Ai là khách hàng VIP?
Hiểu SELECT giúp bạn chủ động thay vì chờ dashboard.
2. COUNT, SUM, AVG – Nhóm hàm tổng hợp cơ bản
Đây là các hàm mà BA dùng nhiều nhất vì chúng trả lời câu hỏi định lượng.
  • COUNT() dùng để đếm số dòng.
  • SUM() tính tổng.
  • AVG() tính giá trị trung bình.
Ví dụ: tính tổng doanh thu tháng.
Ví dụ: tính tổng doanh thu tháng.

Hoặc tính giá trị đơn hàng trung bình:
Ví dụ tính giá trị đơn hàng trung bình
 
Trong các cuộc họp với business, câu hỏi thường xoay quanh “bao nhiêu”, “trung bình là gì”, “tăng hay giảm bao nhiêu phần trăm”. Nhóm hàm này giúp bạn có con số cụ thể để trao đổi thay vì nói cảm tính.
 
3. GROUP BY – Phân nhóm dữ liệu
Nếu chỉ dùng COUNT hay SUM mà không GROUP BY, bạn chỉ có một con số tổng. Nhưng BA thường cần xem theo từng phân khúc.
 
Ví dụ: doanh thu theo từng phương thức thanh toán.
Ví dụ: doanh thu theo từng phương thức thanh toán.
 
GROUP BY giúp bạn:
  • So sánh hiệu suất theo kênh
  • Phân tích theo tháng, theo khu vực
  • Phát hiện nhóm bất thường
Trong e-commerce hoặc fintech, GROUP BY gần như được dùng hàng ngày.
 
4. WHERE – Lọc dữ liệu theo điều kiện
WHERE giúp bạn khoanh vùng dữ liệu liên quan. Đây là phần cực kỳ quan trọng khi xác minh requirement.
 
Ví dụ: xem các giao dịch thất bại.
Ví dụ: xem các giao dịch thất bại.
 
BA thường phải trả lời các câu hỏi kiểu:
  • Tỷ lệ fail trong tuần này?
  • Chỉ xem user premium?
  • Chỉ lấy giao dịch trên 1 triệu?
Nếu không biết WHERE, bạn sẽ không thể phân tích theo điều kiện cụ thể.
 
5. JOIN – Kết nối các bảng với nhau
Trong hệ thống thực tế, dữ liệu không nằm trong một bảng duy nhất. User ở bảng users, đơn hàng ở orders, thanh toán ở payments. JOIN giúp kết nối chúng.
 
Ví dụ: xem user và tổng số đơn hàng của họ.
Ví dụ: xem user và tổng số đơn hàng của họ.
 
Với BA, JOIN là chìa khóa để:
  • Hiểu mối quan hệ dữ liệu
  • Phân tích hành vi người dùng
  • Kiểm tra tính logic của hệ thống
Khi bạn hiểu JOIN, bạn sẽ hiểu rõ hơn cách Dev thiết kế database và viết requirement sát thực tế hơn.
 
6. MAX, MIN – Tìm giá trị lớn nhất và nhỏ nhất
Hai hàm này đơn giản nhưng hữu ích trong kiểm tra dữ liệu.
Ví dụ:
  • Đơn hàng lớn nhất là bao nhiêu?
  • Thời điểm đăng nhập gần nhất?
Ví dụ Tìm giá trị đơn hàng
 
Trong nhiều tình huống, chỉ cần biết giá trị lớn nhất hoặc nhỏ nhất cũng đủ để phát hiện anomaly.
 
7. CASE WHEN – Điều kiện linh hoạt trong truy vấn
CASE WHEN giúp bạn phân loại dữ liệu ngay trong query.
 
Ví dụ: phân loại khách hàng theo mức chi tiêu.
Ví dụ: phân loại khách hàng theo mức chi tiêu.

Đối với BA, CASE WHEN rất hữu ích khi cần:
  • Phân khúc khách hàng
  • Tạo rule nghiệp vụ tạm thời để test
  • Mô phỏng logic business trước khi Dev code
8. DISTINCT – Loại bỏ trùng lặp
DISTINCT giúp bạn đếm giá trị duy nhất.
 
Ví dụ: có bao nhiêu người dùng thực sự hoạt động?
Ví dụ: có bao nhiêu người dùng thực sự hoạt động?
 
Nếu không dùng DISTINCT, bạn có thể đếm trùng và đưa ra kết luận sai.
 
9. HAVING – Lọc sau khi GROUP BY
HAVING dùng khi bạn muốn lọc kết quả đã được nhóm.
 
Ví dụ: chỉ lấy các phương thức thanh toán có doanh thu > 1 tỷ.
Ví dụ: chỉ lấy các phương thức thanh toán có doanh thu > 1 tỷ.
 
Trong phân tích nâng cao hơn, HAVING giúp BA tìm ra nhóm có hiệu suất thấp hoặc cao bất thường.
 
10. SUBQUERY – Truy vấn lồng nhau
Subquery cho phép bạn dùng kết quả của một truy vấn bên trong truy vấn khác.
 
Ví dụ: lấy danh sách user có tổng chi tiêu cao hơn trung bình.
Ví dụ: lấy danh sách user có tổng chi tiêu cao hơn trung bình.
 
Với BA, subquery giúp trả lời những câu hỏi phức tạp hơn mà không cần nhiều bước xử lý trung gian.
 
Kết luận
BA không cần trở thành chuyên gia tối ưu truy vấn hay thiết kế database. Nhưng nếu không nắm vững những hàm SQL cơ bản như SELECT, COUNT, SUM, GROUP BY hay JOIN, bạn sẽ luôn phải phụ thuộc vào người khác để kiểm chứng dữ liệu.
 
Trong môi trường hiện đại, nơi mọi quyết định đều cần số liệu chứng minh, kỹ năng SQL cơ bản giúp BA:
  • Chủ động xác minh giả định
  • Hiểu hệ thống sâu hơn
  • Tăng độ tin cậy khi trao đổi với Dev và Data team
SQL không làm thay đổi vai trò của Business Analyst. Nó chỉ giúp bạn làm vai trò đó tốt hơn. Và trong hành trình phát triển lên Senior BA hay Product Owner, khả năng làm việc với dữ liệu chính là một lợi thế thực sự. Hãy theo dõi BAC's Blog để cập nhật thêm nhiều thông tin hữu ích nhé!
 
Nguồn tham khảo:

Nhu cầu đào tạo doanh nghiệp

BAC là đơn vị đào tạo BA đầu tiên tại Việt Nam. Đối tác chính thức của IIBA quốc tế. Ngoài các khóa học public, BAC còn có các khóa học in house dành riêng cho từng doanh nghiệp. Chương trình được thiết kế riêng theo yêu cầu của doanh nghiệp, giúp doanh nghiệp giải quyết những khó khăn và tư vấn phát triển.
 

CÁC KHOÁ HỌC BUSINESS ANALYST BACs.VN DÀNH CHO BẠN

Khoá học Online:

Khoá học Offline:

Tại Tp.HCM:

Tại Hà Nội:

Tham khảo lịch khai giảng TẤT CẢ các khóa học mới nhất

Ban biên tập nội dung - BAC