Chào mọi người, mình là một thành viên mới trong cộng đồng Sheet & Excel và cũng đang tập tành làm quen với Power BI. Thời gian gần đây, mình có tìm hiểu sâu hơn về ngôn ngữ DAX và phát hiện ra một tính năng rất hữu ích mà có lẽ nhiều người mới bắt đầu như mình chưa biết đến, đó là sử dụng biến (Variables).
Việc sử dụng biến trong DAX giúp cho các công thức trở nên dễ đọc, dễ hiểu và dễ bảo trì hơn rất nhiều. Thay vì phải lặp đi lặp lại một phép tính hoặc một biểu thức phức tạp nhiều lần, chúng ta có thể định nghĩa nó một lần dưới dạng biến và gọi tên biến đó ra sử dụng. Điều này không chỉ giúp code gọn gàng mà còn có thể tối ưu hóa hiệu suất, vì Power BI chỉ cần tính toán biểu thức đó một lần.
Ví dụ đơn giản:
// Công thức không dùng biến - Khó đọc, lặp lại tính toán
CALCULATE(SUM(Sales[Amount]),
FILTER(Sales, Sales[Region] = "North"),
FILTER(Sales, Sales[Product] = "Product A")
)
// Công thức dùng biến - Dễ đọc và hiệu quả hơn
VAR SelectedRegion = "North"
VAR SelectedProduct = "Product A"
RETURN
CALCULATE(SUM(Sales[Amount]),
FILTER(Sales, Sales[Region] = SelectedRegion),
FILTER(Sales, Sales[Product] = SelectedProduct)
)