Hồi thứ nhất – Hợp Càn Khôn (SUM)
Bốn thầy trò rời Trường An, ngựa gõ móng đều đặn trên đường quan lộ hướng Tây. Trời cuối thu, gió heo may se lạnh, lá vàng rụng trải thành thảm dọc lối đi. Chưa đầy ba ngày, họ đã đến một vùng đất trù phú: ruộng lúa chín vàng, khoai đỏ chất đầy sân, bắp ngô treo vàng óng trước hiên nhà.
Đây chính là thôn Hợp Càn Khôn – nổi tiếng với lễ hội “Kết Sổ Cuối Năm”, khi dân làng tổng kết toàn bộ sản vật và thành quả trong năm.
Thử thách của trưởng thôn
Trưởng thôn – một lão nông vạm vỡ, râu quai nón, tay cầm cuốn sổ dày – vội vàng đón khách:
“Các vị anh hùng, dân làng chúng tôi năm nào cũng ghi chép đầy đủ lúa, ngô, khoai, số yêu quái bị đuổi khỏi vùng. Nhưng khi cộng lại thì mỗi người ra một kết quả khác. Xin các vị chỉ cho cách tính đúng và thống nhất.”
Ngộ Không cười khẩy:
“Chuyện nhỏ! Đưa bảng số đây, ta gõ một phát là xong.”
Đường Tăng xua tay:
“Khoan, Ngộ Không. Đây là bài học đầu tiên trên đường thỉnh kinh dữ liệu – phép Hợp Càn Khôn.”
Pháp bảo Hợp Càn Khôn
Đường Tăng giơ viên ngọc tròn sáng rực:
“Pháp này gom góp vạn vật thành một con số – trong DAX gọi là SUM. Nó cộng tất cả giá trị trong một cột, bỏ qua các ô trống, và chỉ cộng được một cột số duy nhất.”
Ngài viết lên bảng gỗ:
TongSanLuong = SUM('ThuHoach'[SoLuong])
Giải thích:
'ThuHoach'→ Tên bảng dữ liệu.[SoLuong]→ Tên cột chứa số cần cộng.SUM(...)→ Cộng toàn bộ giá trị trong cột, dựa vào bối cảnh lọc hiện tại.
Liên hệ với Excel
Đường Tăng quay sang dân làng:
“Các ngươi quen dùng Excel sẽ viết:
=SUM(C2:C7)
Ở đó, Excel chỉ cần biết phạm vi ô (range).
Còn trong DAX, vì dữ liệu nằm trong các bảng được mô hình hóa, nên phải chỉ rõ tên bảng và tên cột.”
Bát Giới gãi đầu:
“À, vậy là giống nhau về ý tưởng, chỉ khác là thêm tên bảng để khỏi lẫn.”
Ngộ Không chen vào:
“Nhưng đừng tưởng vậy là hết, DAX mạnh hơn nhiều khi dữ liệu trải dài cả triệu dòng hoặc từ nhiều nguồn khác nhau.”
Bảng số vụ mùa
| Năm | Sản Phẩm | Số Lượng (tạ) |
|---|---|---|
| 2021 | Lúa | 120 |
| 2021 | Ngô | 80 |
| 2021 | Khoai | 60 |
| 2022 | Lúa | 150 |
| 2022 | Ngô | 100 |
| 2022 | Khoai | 90 |
Ngộ Không vận pháp Hợp Càn Khôn, ánh sáng từ viên ngọc bao trùm cột Số Lượng, rồi… bụp! – hiện ra con số 600 tạ.
Filter Context – Điều Excel cũng có nhưng ít ai để ý
Sa Tăng hỏi:
“Nếu chỉ muốn tính tổng của năm 2021 thì sao?”
Đường Tăng đáp:
“Trong Excel, các ngươi sẽ lọc Năm = 2021 bằng AutoFilter, rồi SUM chỉ cộng những ô còn lại.
Trong DAX, cũng tương tự – khi báo cáo đang lọc Năm = 2021, SUM sẽ chỉ cộng các dòng thuộc năm đó.”
Ví dụ:
- Bối cảnh 2021 →
SUMtrả về 260 tạ (120 + 80 + 60). - Bối cảnh 2022 →
SUMtrả về 340 tạ.
“Đây gọi là Filter Context – khái niệm cốt lõi của DAX. Trong Excel, context chính là vùng ô còn lại sau khi lọc. Nhưng trong DAX, context mạnh hơn vì nó có thể do nhiều yếu tố quyết định cùng lúc: slicer, filter, quan hệ giữa các bảng…”
Bài học đầu tiên
Đêm hôm đó, dân làng mở tiệc lớn ăn mừng. Ánh lửa bập bùng, tiếng cười nói rộn ràng. Đường Tăng lặng lẽ ghi vào sổ tay:
“Muốn thành cao thủ DAX, trước tiên phải hiểu phép cộng cho đúng. Từ Excel sang DAX, không xa – chỉ cần học thêm cách gọi tên bảng và nắm rõ filter context.”
Sáng hôm sau, bốn thầy trò lại lên đường. Con đường tiếp theo dẫn họ tới thôn Lưới Lọc Kim Cang, nơi sẽ thử thách họ với phép tính có điều kiện – FILTER, quen thuộc với dân Excel qua hàm FILTER hoặc IF.
