Hàm lọc các sản phẩm theo từng top năm 2024
DAX (Data Analysis Expression) là một tập hợp các hàm, toán tử và hằng số có thể được dùng trong một công thức hoặc biểu thức, để tính toán và trả về một hoặc nhiều giá trị. DAX có rất nhiều hàm, nhưng về cơ bản chúng được chia thành các nhóm chính như sau: Show
Tuy nhiên trong thực tế, chúng ta cũng không sử dụng hết tất cả các hàm DAX sẵn có, đa phần trong quá trình làm việc, chúng ta sẽ chỉ sử dụng một số hàm DAX phổ biến mà thôi. Trong bài viết này, Datapot sẽ chia sẻ tới các bạn các hàm DAX thường được sử dụng nhiều nhất trong công việc của một Data Analyst. Ngoài ra, các bạn có thể tải file Power BI mẫu chúng mình đặt ở cuối bài viết để tham khảo và thực hành theo nhé. Mục lục Hàm CALCULATEMục đích sử dụngHàm CALCULATE được xem là hàm DAX linh hoạt và quan trọng bậc nhất của Power BI bởi khả năng điều chỉnh ngữ cảnh bộ lọc trong phép tính toán, từ đó giúp chúng ta triển khai được các công thức và phép tính phức tạp. Hàm này trả về một giá trị sau khi tính toán theo biểu thức và các bộ lọc được viết trong công thức. Use casesHàm CALCULATE là một hàm được sử dụng rất linh hoạt và có thể đáp ứng được nhiều nhu cầu sử dụng điển hình như: tính toán chỉ số doanh thu, lợi nhuận, chi phí,… theo nhiều bộ lọc khác nhau, kết hợp cùng các hàm khác để tính toán theo nhiều ngữ cảnh,… Syntax
Hàm CALCULATE sẽ hiển thị cú pháp như sau, với điều kiện bắt buộc phải có là Ví dụSử dụng hàm CALCULATE để tính lợi nhuận của một vùng kinh doanh. Chúng ta có bảng sau thể hiện lợi nhuận của các vùng kinh doanh: Do chỉ có nhu cầu lấy dữ liệu về lợi nhuận của “France”, chúng ta viết công thức sau: Kết quả: Khi kết hợp với hàm FILTER, Power BI sẽ sử dụng bộ lọc trong hàm FILTER để tiến hành tính toán và trả ra kết quả duy nhất là lợi nhuận của France, nhưng sẽ không ghi đè lên các dòng dữ liệu của các vùng kinh doanh khác. Trong trường hợp chúng ta muốn so sánh lợi nhuận giữa các vùng với France, chúng ta không cần sử dụng hàm FILTER, mà chỉ cần dùng bộ lọc sẵn có của hàm CALCULATE như sau: Kết quả: Ngoài những cách sử dụng trên, hàm CALCULATE còn được sử dụng kết hợp với rất nhiều hàm khác để ứng dụng trong nhiều bài toán khác nhau. Chúng ta sẽ cùng nghiên cứu một số cách ứng dụng chi tiết hơn của hàm này trong những bài viết tiếp theo. Đọc thêm về cách sử dụng và ứng dụng của hàm CALCULATE. Hoặc bạn có thể xem video hướng dẫn chi tết về cách sử dụng hàm CALCULATE tại kênh YouTube của Datapot. Hàm FILTERMục đích sử dụngHàm FILTER là một hàm DAX được sử dụng để thêm điều kiện lọc theo dòng. Kết quả trả về của hàm FILTER là một bảng (hoặc một bảng chứa một hoặc nhiều cột) chứa các giá trị thỏa mãn điều kiện lọc. Do đó, hàm FILTER không được sử dụng một cách độc lập như 1 công thức mà thường được sử dụng kết hợp với các hàm khác cần sử dụng tới một bảng chứa các giá trị đã được lọc. Use casesMột số trường hợp sử dụng hàm FILTER phổ biến có thể kể đến như: lọc dòng trong bảng theo một số điều kiện, tạo bảng gồm các giá trị được lọc và kết hợp trong các công thức để tính toán giá trị,… Syntax
Cú pháp trong Power BI desktop như sau, cả 2 điều kiện bảng và bộ lọc đều là bắt buộc khi sử dụng hàm này: (FILTER_1) Như đã giải thích ở trên, hàm FILTER trả ra kết quả là một bảng, khi sử dụng độc lập để viết measure, PBI sẽ báo lỗi: Tuy nhiên chúng ta có thể sử dụng hàm FILTER để tạo ra một bảng mới chứa các giá trị thỏa mãn điều kiện lọc: Ví dụTrong phần trên, chúng ta đã biết cách sử dụng hàm FILTER kết hợp với hàm CALCULATE. Hàm FILTER còn có thể được sử dụng với nhiều điều kiện lọc bằng cách kết hợp toán tử AND (dấu &&), OR (dấu ||). Ví dụ 1: Tính lợi nhuận của các loại sản phẩm có chi phí sản xuất nhỏ hơn 5 và thuế nhỏ hơn 5. Chúng ta nhận thấy kết quả của công thức có sử dụng hàm FILTER có sự khác biệt lớn với công thức tính lợi nhuận không sử dụng hàm filter. Công thức này chỉ tính tổng chi phí của các loại sản phẩm có chi phí nhỏ sản xuất nhỏ hơn 5 và thuế nhỏ hơn 5. Lưu ý khi sử dụngHàm FILTER chỉ trả kết quả lọc theo dòng, không lọc theo cột. Trong trường hợp cần lọc theo cột, chúng ta có thể sử dụng hàm SELECTCOLUMNS, ADDCOLUMNS,… Đọc thêm về phân biệt giữa hàm FILTER và hàm FILTERS Hàm ALLMục đích sử dụngHàm ALL là một hàm DAX được sử dụng để loại bỏ hoặc điều chỉnh các điều kiện lọc. Hàm ALL trả ra kết quả là một bảng dữ liệu, do đó hàm này không thể sử dụng độc lập trong measure mà cần sử dụng kết hợp với các hàm có điều kiện cho phép sử dụng bảng. Hàm này có thể sử dụng để tạo ra một bảng mới. Use casesHàm ALL thường được sử dụng để tính tỉ lệ phần trăm đóng góp của một yếu tố trong tổng thể. Ví dụ chúng ta cần tính tỉ lệ phần trăm lợi nhuận của một sản phẩm so với tổng lợi nhuận, tỉ lệ phần trăm chi phí sản xuất của một loại sản phẩm so với tổng chi phí,… Hàm ALL cũng thường được sử dụng để kiểm soát tương tác giữa các bộ lọc. Hàm ALL rất tiện dụng trong trường hợp chúng ta cần hạn chế một số bộ lọc để không ảnh hưởng tới kết quả tính toán cuối cùng. SyntaxHàm ALL có cú pháp như sau:
Hoặc
Chúng ta quan sát cú pháp trên Power BI Desktop như sau: Hàm ALL không có điều kiện bắt buộc khi viết công thức, chúng ta có thể viết ALL () hoặc ALL () hoặc ALL ( Ví dụChúng ta có bảng thể hiện doanh thu bán hàng tại từng quốc gia và 3 bộ lọc: theo loại sản phẩm, giới tính khách hàng và loại giảm giá như hình dưới đây: Hình dưới đây là kết quả sau khi sử dụng hàm ALL để loại bỏ một số bộ lọc:
Chúng ta quan sát sự thay đổi của các cột sử dụng hàm ALL khác nhau sau khi sử dụng thêm bộ lọc Dim Product – Category (1 bộ lọc đến từ bảng Product) trong hình sau:
Lưu ý khi sử dụng
Gợi ý một số hàm liên quan
Đọc thêm về phân biệt các hàm ALL trong Power BI. Hàm SWITCHMục đích sử dụngHàm SWITCH là một hàm DAX trả về những kết quả khác nhau dựa trên giá trị của biểu thức nhập vào. Hiểu một cách đơn giản, hàm SWITCH là hàm thường được sử dụng thay thế cho hàm IF trong trường hợp có nhiều điều kiện với nhiều mệnh đề. Khi đó, hàm SWITCH sẽ thể hiện tốt hơn hàm IF về mặt tốc độ xử lý, khả năng đọc, sửa. Hàm SWITCH rất đa dụng và là một trong số những hàm DAX thường được sử dụng nhất trong PBI. Use casesỨng dụng đầu tiên và cơ bản nhất của hàm SWITCH là để kiểm tra TRUE, FALSE của một hoặc nhiều giá trị đã cho. Hàm SWITCH cũng thường được dùng khi cần tạo thêm một cột dữ liệu mới dựa trên các điều kiện của cột dữ liệu khác. Ngoài ra, hàm SWITCH còn có thể được sử dụng như một hàm chỉnh sửa conditional formatting, hoặc thay thế bookmark,… Syntax
Trong đó:
Ví dụChúng ta có danh sách các quốc gia theo địa chỉ mua của khách hàng như sau: Do nhu cầu, chúng ta cần phân loại các quốc gia này theo châu lục. Để thực hiện được điều này, chúng ta tạo thêm cột mới trong bảng Geography (Customer) và sử dụng hàm SWITCH: Kết quả: Tuy nhiên, khi viết hàm SWITCH với biểu thức là ‘Geography (Customer)’[Country], chúng ta phải liệt kê tên từng quốc gia mà không thể sử dụng các toán tử OR, AND,… đồng thời cũng gặp vấn đề về dạng dữ liệu (data type). Điều này dẫn đến việc United States và Canada tuy đều thuộc America nhưng phải liệt kê 2 lần. Khi chúng ta viết OR || trong SWITCH, PBI sẽ báo lỗi như sau: Để giải quyết cả 2 vấn đề này, chúng ta sẽ sử dụng SWITCH( TRUE() ): SWITCH( TRUE() ) có biểu thức là TRUE(), biểu thức này sẽ khiến hàm SWITCH xem xét trả về kết quả mà giá trị không trùng khớp tuyệt đối với giá trị được nhập. Chúng ta tham khảo thêm một ví dụ để hiểu rõ hơn về sự tiện dụng của hàm SWITCH( TRUE() ) như sau: Kết quả: Nếu chúng ta chỉ sử dụng SWITCH, công thức sẽ báo lỗi: Lưu ý khi sử dụng
Đọc thêm về hàm SWITCH trong Power BI. Hàm TOTALYTD / TOTALQTD / TOTALMTDMục đích sử dụngCác hàm TOTALYTD / TOTALQTD / TOTALMTD là các hàm DAX trực thuộc bộ hàm Time Intelligence của DAX. Các hàm này đều trả về một giá trị, tùy theo bối cảnh được lựa chọn. Hàm TOTALYTD đánh giá biểu thức được nhập và trả về giá trị là kết quả lũy kế của biểu thức từ ngày đầu năm tới hiện tại (hoặc ngày được lựa chọn trong 1 số filter ngày tháng). Hàm TOTALQTD đánh giá biểu thức được nhập và trả về giá trị là kết quả lũy kế của biểu thức từ ngày đầu quý tới hiện tại (hoặc ngày được lựa chọn trong 1 số filter ngày tháng). Hàm TOTALMTD đánh giá biểu thức được nhập và trả về giá trị là kết quả lũy kế của biểu thức từ ngày đầu tháng tới hiện tại (hoặc ngày được lựa chọn trong 1 số filter ngày tháng). Use casesCác hàm này thường dùng để giải quyết bài toán kinh doanh yêu cầu tính doanh thu, lợi nhuận,… lũy kế từ đầu kì. Syntax
Trong đó:
Hàm TOTALQTDMục đích sử dụngGiống như đã nhắc ở trên, hàm TOTALQTD là một hàm DAX đánh giá biểu thức được nhập và trả về giá trị là kết quả lũy kế của biểu thức từ ngày đầu quý tới hiện tại (hoặc ngày được lựa chọn trong 1 số filter ngày tháng). Use casesCác hàm này thường dùng để giải quyết bài toán kinh doanh yêu cầu tính doanh thu, lợi nhuận,… lũy kế từ đầu quý tới hiện tại. Syntax
Hàm TOTALMTDSyntaxHàm TOTALMTD có công thức tính tương tự như hàm TOTALQTD như sau:
Ví dụBảng dữ liệu AdventureWorks chứa dữ liệu kinh doanh từ 1/1/2018 tới 30/6/2021, vì vậy khi sử dụng các hàm TOTALYTD/TOTALQTD/TOTALMTD mà không có bộ lọc nào được nhắc đến, kết quả được trả ra sẽ là kết quả của năm 2021. Trong ví dụ này, chúng ta sẽ cùng tìm hiểu về cách hoạt động của hàm TOTALYTD. Khi sử dụng bộ lọc Date trên slicer và chọn khoảng thời gian từ 1/1/2018 đến 31/12/2020, chúng ta sẽ nhận được kết quả như sau: Lúc này, cột YTD Profit chứa kết quả lợi nhuận từ 1/1/2020 đến 31/12/2020, trong khi cột Total Profit chứa kết quả lợi nhuận từ 1/1/2018 đến 31/12/2020. Do đó, nếu chỉ sử dụng cột Total Profit mà muốn biết kết quả lợi nhuận từ 1/1/2020 đến 31/12/2020, chúng ta cần chọn trên slicer khoảng thời gian từ 1/1/2020 đến 31/12/2020. Dù chọn ngày bắt đầu trên slicer là bất kể ngày nào trong năm 2020, kết quả của cột YTD Profit luôn được tính từ ngày 1/1/2020. Khi chọn ngày kết thúc trên slicer là một ngày bất kì trong năm 2020, kết quả của cột YTD Profit sẽ là lũy kế lợi nhuận từ ngày 1/1/2020 tới ngày được chọn. Và nếu lựa chọn ngày kết thúc trên slicer là một ngày của năm 2021, kết quả của cột YTD Profit lúc đó sẽ chỉ chứa lợi nhuận lũy kế từ ngày 1/1/2021 tới ngày được chọn. Lưu ý khi sử dụng
Gợi ý một số hàm liên quan
Tổng hợp các hàm Time Intelligence trong Power BI. Hàm USERELATIONSHIPMục đích sử dụngHàm USERELATIONSHIP là một hàm DAX được dùng để xác định mối quan hệ giữa hai bảng mà chúng ta cần sử dụng khi tính toán trong các hàm, trong trường hợp giữa hai bảng có nhiều hơn 1 mối quan hệ. Hàm này không trả về giá trị nào mà chỉ có tác dụng bật mối quan hệ của hai bảng trong hàm tính toán có sử dụng hàm USERELATIONSHIP. Use casesTrong thực tế, khi xây dựng model trong Power BI, có những trường hợp mà chúng ta nối hai bảng với nhau bằng một quan hệ active và một (hoặc nhiều) quan hệ inactive (thể hiện bằng đường nối nét đứt). Tuy nhiên, đôi khi chúng ta lại cần lựa chọn những mối quan hệ giữa hai bảng ấy để phục vụ tính toán các chỉ số. Một số ứng dụng thường thấy nhất của hàm USERELATIONSHIP là để sử dụng linh hoạt mối quan hệ giữa bảng Date và một bảng khác, ví dụ như bảng fact thể hiện giao dịch của một doanh nghiệp. Do trên bảng fact giao dịch này có thể có ngày tạo đơn hàng, ngày giao hàng, ngày đơn hàng chuyển trạng thái hoàn thành,… nhưng khi tính toán, chúng ta không chỉ muốn tính số đơn hàng dựa trên ngày tạo đơn, mà muốn tính toán số đơn dựa trên ngày giao hàng, hay ngày hoàn thành đơn hàng. Lúc này, sử dụng hàm USERELATIONSHIP trong công thức tính toán sẽ giúp chúng ta sử dụng được các mối quan hệ về ngày theo mong muốn. Syntax
Cột 1 – ColumnName1: PK (hoặc FK) của 1 bảng trong 2 bảng có mối quan hệ Cột 2 – ColumnName 2: FK (hoặc PK) của bảng còn lại trong 2 bảng có mối quan hệ Ví dụ Quan sát 2 bảng Internet Sales và bảng Date đang có mối quan hệ như sau: Mối quan hệ đang active (được thể hiện bằng đường nối liền) giữa 2 bảng là cột Date (bảng Date) và cột OrderDate (bảng Internet Sales). Ngoài ra, 2 bảng này còn được nối với nhau bởi 2 mối quan hệ inactive (thể hiện bằng đường nét đứt) là: Date – DueDate, Date – ShipDate. Chúng ta tính tổng lợi nhuận của doanh nghiệp theo mỗi quốc gia, sử dụng 3 công thức với 3 mối quan hệ khác nhau bằng hàm USERELATIONSHIP và được kết quả như sau: Chúng ta lọc xem lợi nhuận trong năm tài chính 2020, nhận thấy lợi nhuận của mỗi quốc gia đều có sự khác biệt khi dùng những mối quan hệ về ngày khác nhau. Theo công thức tính trong cột lợi nhuận theo order date, công thức đã tính lợi nhuận của theo các đơn hàng được đặt trong năm tài chính 2020. Tuy nhiên, do có sự chênh lệch giữa ngày đặt hàng và ngày khách nhận hàng, có thể sang năm tài chính 2021 đơn hàng đó mới được ship đến khách hàng, và khi đó đơn hàng được tính vào lợi nhuận của năm 2021, nếu sử dụng mối quan hệ date và ship date. Việc sử dụng mối quan hệ nào để tính toán hoàn toàn tùy thuộc vào nhu cầu của người sử dụng. Lưu ý khi sử dụng
Đọc thêm về hàm USERELATIONSHP. Hàm SUMXMục đích sử dụngThông thường chúng ta sử dụng hàm SUM để tính tổng trên một cột duy nhất, tuy nhiên, với hàm SUMX, chúng ta có thể mở rộng phép tính tổng của mình ra nhiều cột khác nhau. Cú pháp của hàm SUMX yêu cầu hai đối số là bảng và biểu thức, hàm này sẽ hoạt động theo phương thức: quét từng dòng trong bảng, tính toán theo biểu thức, và trả về kết quả tổng. Use casesSUMX là hàm DAX thường được sử dụng trong những trường hợp cần tính toán kết quả theo từng dòng, dựa trên nhiều cột. Hàm SUMX cũng là hàm cho phép sử dụng đối số là một bảng trong công thức, do đó chúng ta có thể kết hợp với các hàm trả về giá trị bảng để tính toán. Syntax
Trong đó:
Ví dụChúng ta tính lợi nhuận của các loại sản phẩm dựa vào công thức: Số lượng bán * Giá bán. Ngoài ra, hàm SUMX nhận bảng là một đối số, do đó chúng ta có thể sử dụng các hàm trả về giá trị một bảng. Chúng ta kết hợp hàm FILTER và hàm SUMX để tính số thuế phải trả của các khách hàng trong độ tuổi 45-55 tuổi như sau: Trước hết, viết công thức tính tổng số thuế phải trả: Kết hợp hàm SUMX và hàm FILTER để tạo bộ lọc, được kết quả như sau: Lưu ý khi sử dụng
Gợi ý một số hàm liên quanHàm SUMX là hàm thuộc bộ hàm Iterator của DAX, do đó có thể tham khảo thêm các hàm tương tự như: AVERAGEX, MAXX, MINX,… Đọc thêm về hàm SUMX. Mục đích sử dụngRELATED là hàm DAX trả về một giá trị liên quan đến dòng trong bảng từ một bảng khác. Khi sử dụng hàm RELATED, hai bảng được tham chiếu bắt buộc phải có mối quan hệ 1 – nhiều hoặc 1 – 1. Khi tham chiếu, chúng ta bắt buộc phải dùng bảng gốc là bảng nằm ở đầu nhiều của mối quan hệ, và bảng tham chiếu là bảng nằm ở đầu 1 của mối quan hệ. Hàm RELATED trả về giá trị tham chiếu theo dòng, do đó hàm này có thể sử dụng khi viết công thức, hoặc tạo cột mới trong bảng. Use casesHàm RELATED thường được sử dụng trong các hàm tính toán cần lấy giá trị giữa 2 bảng có mối quan hệ. Syntax
0 Ví dụChúng ta cần tính doanh thu dựa trên công thức: số lượng sản phẩm bán * giá sản phẩm. Tuy nhiên, giá sản phẩm lại nằm trên bảng Product, và số lượng bán lại nằm trên bảng Sales, và 2 bảng được nối với nhau bằng mối quan hệ 1 – nhiều. Chúng ta viết công thức tính tổng doanh thu như sau: Cần lưu ý về cột được sử dụng trong hàm RELATED. Trong công thức này, cột ListPrice thuộc bảng Product là một bảng Dim, nằm ở chiều 1 của mối quan hệ 1 – nhiều, do đó nó có thể được đặt trong hàm RELATED. Nếu chúng ta đảo chiều và đặt trong hàm RELATED cột OrderQuantity của bảng Internet Sales – một bảng fact nằm ở chiều nhiều của mối quan hệ, thì công thức sẽ báo lỗi. Lưu ý khi sử dụng
Gợi ý một số hàm liên quan
Đọc thêm về hàm RELATED. Hàm REMOVEFILTERSMục đích sử dụngREMOVEFILTERS là hàm DAX được sử dụng để bỏ điều kiện lọc trong filter context. Syntax
1 Trong đó:
Hàm REMOVEFILTERS là một hàm tương đối giống với hàm ALL. Tuy nhiên, chúng có điểm khác nhau là hàm REMOVEFILTERS chỉ loại bỏ các điều kiện lọc mà không tạo ra kết quả gì, còn hàm ALL sẽ trả ra kết quả là một bảng giá trị đã bỏ hết các điều kiện lọc. Ví dụCho 1 cơ sở dữ liệu gồm 2 bảng là Sales vs Products. Tính tỷ lệ phần trăm doanh thu của từng nhóm sản phẩm (Subcategory) Bài giải: Để giải bài toán tính tỷ lệ %, chúng ta bắt đầu với việc tính toán 2 giá trị là: + Doanh thu của từng nhóm sản phẩm (Revenue) + Doanh thu Total hay Doanh thu RemoveFilters (Bỏ hết các điều kiện lọc) Trong công thức này, RemoveFilters đã loại bỏ điều kiện lọc Subcategory ở visual và trả kết quả là toàn bộ giá trị Revenue của toàn bộ các nhóm sản phẩm. Cuối cùng là tỷ lệ % doanh thu của từng nhóm sản phẩm: Đọc thêm về hàm REMOVEFILTERS. Hàm RANKXMục đích sử dụngHàm RANKX trong Power BI là một hàm tính toán dùng để xếp hạng dữ liệu trong một bảng theo một tiêu chí cụ thể. Nó cho phép bạn đánh giá và xếp hạng các giá trị dựa trên các biểu thức hoặc giá trị của cột khác trong bảng dữ liệu. Syntax
2 Trong đó:
Hàm RANKX sẽ trả về một số nguyên đại diện cho vị trí xếp hạng của giá trị trong biểu thức hoặc cột được xác định. Vị trí xếp hạng cao nhất sẽ có giá trị 1, vị trí xếp hạng thấp nhất sẽ có giá trị lớn nhất tùy thuộc vào số lượng giá trị trong bảng dữ liệu. Ví dụCho 1 cơ sở dữ liệu gồm 2 bảng là Sales vs Products. Yêu cầu xếp hạng doanh thu theo từng nhóm sản phẩm (Subcategory) theo chiều từ cao xuống thấp?. Bài giải: Với yêu cầu xếp hạng thu theo từng nhóm sản phẩm (Subcategory) theo chiều từ cao xuống thấp, chúng ta cùng sử dụng hàm RANK với các đối số lần lượt là:
Từ đó, chúng ta sẽ được hàm tính như sau: Lưu ý khi sử dụngHàm RANKX thường được kết hợp với hàm ALL hoặc ALLSELECTED trong Power BI để tạo ra xếp hạng dựa trên toàn bộ dữ liệu, bất kể các bộ lọc hoặc nhóm đã áp dụng trong báo cáo. Khi sử dụng hàm RANKX mà không kết hợp với ALL hay ALLSELECTED, kết quả xếp hạng có thể bị ảnh hưởng bởi bộ lọc hiện tại hoặc các yếu tố khác trong báo cáo. Tuy nhiên, lựa chọn ALL hay ALLSELECTED cũng cần phải cân nhắc vào nhu cầu sử dụng của mỗi người. Điều này được thể hiện rõ nhất khi chúng ta add thêm 1 slicer Subcategory để lọc dữ liệu Đọc thêm về hàm RANKX và những điều có thể bạn chưa biết! File mẫu thực hành top 10 hàm DAX: Datapot_DAX Sample_V1 Trên đây, Datapot đã chia sẻ tới các bạn các hàm DAX phổ biến nhất trong Power BI. Các nội dung này đều nằm trong chương trình giảng dạy trong khóa học Power BI của Datapot. Việc làm chủ các công thức DAX thường sử dụng sẽ giúp bạn giải quyết được tương đối các bài toán kinh doanh với vai trò của một Data Analyst. Ngoài ra, các bạn có thể đọc thêm các công thức DAX trong tài liệu của Microsoft, mình sẽ để link ở đây nha: https://docs.microsoft.com/en-us/dax/. |