Hàm logic

DAX nâng cao trong Power BI

Carl Rosseel

Curriculum Manager

Tổng quan về hàm logic

Hàm logic xử lý một biểu thức để trả thông tin về giá trị hoặc tập trong biểu thức.

Các hàm logic dùng nhiều nhất:

  • IF()
  • AND(), OR(), NOT()
  • SWITCH()
DAX nâng cao trong Power BI

IF() là một trong các hàm logic dùng nhiều nhất

Cấu trúc:

  • IF(<logical_test>, <value_if_true>, <value_if_false>)

Ví dụ:

  • Performance = IF([Total Sales] >= 50 000, "Target Reached", "Target Not Reached")
DAX nâng cao trong Power BI

IF() là một trong các hàm logic dùng nhiều nhất

Cấu trúc:

  • IF(<logical_test>, <value_if_true>[, <value_if_false>])

Ví dụ:

  • Performance = IF([Total Sales] >= 50 000, "Target Reached", "Target Not Reached")
Name Total Sales
Jenny 48,431
Jane 76,528
Dwayne 24,167
Thomas 52,125
DAX nâng cao trong Power BI

IF() là một trong các hàm logic dùng nhiều nhất

Cấu trúc:

  • IF(<logical_test>, <value_if_true>[, <value_if_false>])

Ví dụ:

  • Performance = IF([Total_Sales] >= 50 000, "Target Reached", "Target Not Reached")
Name Total Sales Performance
Jenny 48,431 Chưa đạt mục tiêu
Jane 76,528 Đạt mục tiêu
Dwayne 24,167 Chưa đạt mục tiêu
Thomas 52,125 Đạt mục tiêu
DAX nâng cao trong Power BI

Toán tử AND(), OR() & NOT()

Cả ba toán tử trả về TRUE hoặc FALSE.

  • AND(<logical1>,<logical2>)
    • Trả về TRUE nếu cả hai điều kiện là TRUE
    • Ví dụ: AND(5 < 4, 5 < 6) = AND(FALSE, TRUE) = FALSE
  • OR(<logical1>,<logical2>)
    • Trả về TRUE nếu có ít nhất một điều kiện TRUE
    • Ví dụ: OR(5 < 4, 5 < 6) = OR(FALSE, TRUE) = TRUE
  • NOT(<logical>)
    • Đổi TRUE thành FALSE và ngược lại
    • Ví dụ: NOT(OR(5 < 4, 5 < 6)) = NOT(TRUE) = FALSE
DAX nâng cao trong Power BI

Toán tử AND(), OR() & NOT()

AND có thể dùng &&

  • AND(5 < 4, 5 < 6) = 5 < 4 && 5 < 6

OR có thể dùng ||

  • OR(5 < 4, 5 < 6) = 5 < 4 || 5 < 6
DAX nâng cao trong Power BI

Sức mạnh của SWITCH()

Đánh giá một biểu thức theo danh sách giá trị và trả về một trong nhiều kết quả.

  • SWITCH(<expression>, <value>, <result>[, <value>, <result>] ... [, <else>])
  • Thường tốt hơn IF() lồng nhau
    Performance = SWITCH(TRUE, 
    [Total_Sales] < 25 000, "Poor",
    [Total_Sales] < 50 000, "Below expectations",
    [Total_Sales] < 75 000, "Above expectations",
    "Exceptional")
    
DAX nâng cao trong Power BI

Sức mạnh của SWITCH()

Performance = SWITCH(TRUE, 
[Total_Sales] < 25 000, "Poor",
[Total_Sales] < 50 000, "Below expectations",
[Total_Sales] < 75 000, "Above expectations",
 "Exceptional")
Name Total Sales
Jenny 48,431
Jane 76,528
Dwayne 24,167
Thomas 52,125
DAX nâng cao trong Power BI

Sức mạnh của SWITCH()

Performance = SWITCH(TRUE, 
[Total_Sales] < 25 000, "Poor",
[Total_Sales] < 50 000, "Below expectations",
[Total_Sales] < 75 000, "Above expectations",
 "Exceptional")
Name Total Sales Performance
Jenny 48,431 Dưới kỳ vọng
Jane 76,528 Xuất sắc
Dwayne 24,167 Kém
Thomas 52,125 Trên kỳ vọng
DAX nâng cao trong Power BI

Sức mạnh của SWITCH()

DISCOUNT = SWITCH([Clothing Type], 
               "Shoes", 0.15,   
               "Pants", 0.20,
               "Belts", 0.30, 
               "T-shirt", 0.25)
Clothing Type
Shoes
Pants
Belt
T-shirt
DAX nâng cao trong Power BI

Sức mạnh của SWITCH()

DISCOUNT = SWITCH([Clothing Type], 
               "Shoes", 0.15,   
               "Pants", 0.20,
               "Belts", 0.30, 
               "T-shirt", 0.25)
Clothing Type Discount
Shoes 15%
Pants 20%
Belt 30%
T-shirt 25%
DAX nâng cao trong Power BI

Hãy chuyển đổi!

DAX nâng cao trong Power BI

Preparing Video For Download...