DAX intermédiaire dans Power BI
Carl Rosseel
Curriculum Manager
Les fonctions logiques évaluent une expression pour renvoyer de l'information sur les valeurs ou ensembles de l'expression.
Les fonctions logiques les plus utilisées sont :
IF()AND(), OR(), NOT()SWITCH()Structure :
IF(<logical_test>, <value_if_true>, <value_if_false>)Exemple :
Performance = IF([Total Sales] >= 50 000, "Target Reached", "Target Not Reached")Structure :
IF(<logical_test>, <value_if_true>[, <value_if_false>])Exemple :
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 |
Structure :
IF(<logical_test>, <value_if_true>[, <value_if_false>])Exemple :
Performance = IF([Total_Sales] >= 50 000, "Target Reached", "Target Not Reached")| Name | Total Sales | Performance |
|---|---|---|
| Jenny | 48,431 | Target not Reached |
| Jane | 76,528 | Target Reached |
| Dwayne | 24,167 | Target Not Reached |
| Thomas | 52,125 | Target Reached |
Les trois opérateurs renvoient TRUE ou FALSE en sortie.
AND(<logical1>,<logical2>)TRUE si les deux conditions sont TRUEAND(5 < 4, 5 < 6) = AND(FALSE, TRUE) = FALSEOR(<logical1>,<logical2>)TRUE si au moins une condition est TRUEOR(5 < 4, 5 < 6) = OR(FALSE, TRUE) = TRUENOT(<logical>)TRUE et FALSENOT(OR(5 < 4, 5 < 6)) = NOT(TRUE) = FALSEAND peut être remplacé par &&
AND(5 < 4, 5 < 6) = 5 < 4 && 5 < 6 OR peut être remplacé par ||
OR(5 < 4, 5 < 6) = 5 < 4 || 5 < 6Évalue une expression par rapport à une liste de valeurs et renvoie l'une des expressions de résultat possibles.
SWITCH(<expression>, <value>, <result>[, <value>, <result>] ... [, <else>])IF() imbriquésPerformance = SWITCH(TRUE,
[Total_Sales] < 25 000, "Poor",
[Total_Sales] < 50 000, "Below expectations",
[Total_Sales] < 75 000, "Above expectations",
"Exceptional")
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 |
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 | Below Expectations |
| Jane | 76,528 | Exceptional |
| Dwayne | 24,167 | Poor |
| Thomas | 52,125 | Above expectations |
DISCOUNT = SWITCH([Clothing Type],
"Shoes", 0.15,
"Pants", 0.20,
"Belts", 0.30,
"T-shirt", 0.25)
| Clothing Type |
|---|
| Shoes |
| Pants |
| Belt |
| T-shirt |
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 intermédiaire dans Power BI