Địa chỉ:
Lầu 7 Tòa nhà STA, 618 đường 3/2, Phường Diên Hồng (Phường 14, Quận 10), TP HCM
Giờ làm việc
Thứ 2 tới thứ 6: 9:00 - 18:00
Địa chỉ:
Lầu 7 Tòa nhà STA, 618 đường 3/2, Phường Diên Hồng (Phường 14, Quận 10), TP HCM
Giờ làm việc
Thứ 2 tới thứ 6: 9:00 - 18:00
Trong phân tích dữ liệu với Power BI, việc xếp hạng là một trong những nhu cầu phổ biến nhất. Dù bạn cần tìm ra top 10 sản phẩm bán chạy nhất, xếp hạng nhân viên có doanh số cao nhất, hay đánh giá danh mục mang lại lợi nhuận tối ưu, hàm RANKX trong Power BI luôn là công cụ hàng đầu được các kỹ sư dữ liệu và Business Analyst (BA) lựa chọn. Bài viết này sẽ giúp bạn làm chủ hàm hàm RANKX trong Power BI từ định nghĩa, cú pháp chi tiết, đến các ví dụ thực hành trực quan dựa trên dự án thực tế.
RANKX là một hàm DAX mạnh mẽ được sử dụng để trả về thứ hạng của một giá trị cụ thể trong một danh sách các giá trị từ một bảng biểu dữ liệu.Về bản chất, hàm RANKX sẽ duyệt qua từng dòng của một bảng, tính toán giá trị dựa trên một biểu thức (thường là một Measure như Doanh thu, Lợi nhuận, …) và so sánh kết quả đó với toàn bộ tập hợp để gán cho nó một số thứ tự xếp hạng.
Cú pháp chi tiết của hàm RANKX
RANKX(<table>, <expression>[, <value>[, <order>[, <ties>]]]
Giải thích các tham số (Parameters)
Để hiểu rõ hơn cách hàm RANKX trong Power BI xử lý các trường hợp phức tạp, chúng ta cần đi sâu vào hai tùy chọn Order và Ties.
Hãy cùng theo dõi bảng so sánh trực quan dưới đây khi xếp hạng Doanh thu bằng hai phương thức này:
| Tên đối tác | Doanh thu | Xếp hạng với Skip (Mặc định) | Xếp hạng với Dense |
| Công ty A | 100,000 | 1 | 1 |
| Công ty B | 80,000 | 2 | 2 |
| Công ty C | 80,000 | 2 | 2 |
| Công ty D | 50,000 | 4 (Nhảy cóc số 3) | 3 (Liền mạch) |
Sự lựa chọn tùy thuộc vào quy chuẩn báo cáo của doanh nghiệp bạn. Thông thường, Dense được ưa chuộng hơn trong các báo cáo dashboard vì nó không tạo ra các khoảng trống thứ hạng gây bối rối cho người đọc.
Để minh họa sống động, chúng ta sẽ thực hành xếp hạng dựa trên một mô hình dữ liệu thực tế gồm bảng sản phẩm Product (chứa cột Category và Subcategory) và các Measure cốt lõi: [Total Sales] (Tổng doanh thu) và [Total Profit] (Tổng lợi nhuận).
Trong ví dụ đầu tiên, chúng ta muốn xếp hạng các danh mục sản phẩm lớn để biết đâu là nhóm ngành hàng đem lại nhiều doanh thu nhất.Công thức DAX được thiết lập như sau:
Rank_Category_byRev = RANKX(ALL('Product'[Category]), [Total Sales])

Doanh thu lớn chưa chắc lợi nhuận đã cao. Chúng ta viết thêm một Measure để xếp hạng các danh mục tương tự nhưng dựa trên chỉ số Lợi nhuận ([Total Profit]):
Rank_Cate_byProfit = RANKX(ALL('Product'[Category]), [Total Profit])

Để đi sâu hơn vào chi tiết sản phẩm, chúng ta cần xếp hạng ở cấp độ nhỏ hơn là các nhóm sản phẩm phụ (Subcategory).
Chúng ta xây dựng hai Measure xếp hạng tương ứng cho Subcategory:
Rank_SubCate_byRev = RANKX(ALL('Product'[Subcategory]), [Total Sales])

Rank_SubCate_byProfit = RANKX(ALL('Product'[Subcategory]), [Total Profit])

Khi chúng ta đưa các Measure vừa tạo vào các bảng dữ liệu (Table Visual), Power BI sẽ tự động tính toán thứ hạng một cách trực quan và chính xác:

Hàm RANKX cực kỳ đa năng, bạn nên ưu tiên sử dụng nó trong các trường hợp sau:
Dù là hàm xếp hạng tiêu chuẩn, RANKX thường gây ra nhiều bối rối cho những người mới bắt đầu học DAX. Dưới đây là những lưu ý đắt giá giúp bạn tránh các lỗi thường gặp:
Đây là lỗi phổ biến nhất. Nguyên nhân do bạn đưa trực tiếp cột của bảng vào mà không bọc trong hàm ALL hoặc ALLSELECTED.Giải pháp: Luôn đảm bảo tham số đầu tiên của RANKX là một danh sách đã được giải phóng các bộ lọc, ví dụ: ALL(‘Tên_Bảng'[Tên_Cột]).
Trên visual dạng Table, dòng Total thường sẽ trả về kết quả xếp hạng là 1 hoặc một con số không mong muốn. Để xử lý tính thẩm mỹ này, bạn nên kết hợp RANKX với hàm kiểm tra điều kiện dòng HASONEVALUE hoặc ISINSCOPE.
Hàm RANKX trong Power BI là một trong những giải pháp tối ưu giúp nâng tầm các báo cáo phân tích dữ liệu từ dạng tĩnh sang dạng động có tính tương tác cao. Việc nắm rõ bản chất vận hành của RANKX và cách kết hợp với các hàm lọc như ALL, ALLSELECTED sẽ giúp bạn xây dựng được những báo cáo xếp hạng chính xác và mượt mà.
RANKX chỉ là một trong nhiều hàm DAX quan trọng được sử dụng trong các dự án phân tích dữ liệu thực tế. Để xây dựng Dashboard chuyên nghiệp, bạn cần kết hợp thêm các kỹ năng về Data Modeling, Power Query, DAX, Time Intelligence và thiết kế báo cáo tương tác.
👉 Tham khảo Khóa học Power BI cấp tốc tại Starttrain để được hướng dẫn từ cơ bản đến nâng cao thông qua các dự án doanh nghiệp thực tế.

Starttrain Official

Starttrain Official

Starttrain Official

Starttrain Official
Vui lòng liên hệ qua những thông tin bên dưới. Starttrain sẽ phản hồi bạn trong thời gian sớm nhất.




