中級 DAX in Power BI
Carl Rosseel
Curriculum Manager
論理関数は式に対して動作し、その値や集合に関する情報を返します。
主な論理関数:
IF()AND(), OR(), NOT()SWITCH()構文:
IF(<logical_test>, <value_if_true>, <value_if_false>)例:
Performance = IF([Total Sales] >= 50 000, "Target Reached", "Target Not Reached")構文:
IF(<logical_test>, <value_if_true>[, <value_if_false>])例:
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 |
構文:
IF(<logical_test>, <value_if_true>[, <value_if_false>])例:
Performance = IF([Total_Sales] >= 50 000, "Target Reached", "Target Not Reached")| Name | Total Sales | Performance |
|---|---|---|
| Jenny | 48,431 | 目標未達 |
| Jane | 76,528 | 目標達成 |
| Dwayne | 24,167 | 目標未達 |
| Thomas | 52,125 | 目標達成 |
3つの演算子はいずれも出力は TRUE または FALSE です。
AND(<logical1>,<logical2>)TRUE のとき TRUE を返すAND(5 < 4, 5 < 6) = AND(FALSE, TRUE) = FALSEOR(<logical1>,<logical2>)TRUE のとき TRUE を返すOR(5 < 4, 5 < 6) = OR(FALSE, TRUE) = TRUENOT(<logical>)TRUE と FALSE を反転NOT(OR(5 < 4, 5 < 6)) = NOT(TRUE) = FALSEAND は && に置き換え可能
AND(5 < 4, 5 < 6) = 5 < 4 && 5 < 6 OR は || に置き換え可能
OR(5 < 4, 5 < 6) = 5 < 4 || 5 < 6式を値の一覧に照合し、複数の結果式のいずれかを返します。
SWITCH(<expression>, <value>, <result>[, <value>, <result>] ... [, <else>])IF() より好まれることが多いPerformance = 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 | 期待未満 |
| Jane | 76,528 | 優秀 |
| Dwayne | 24,167 | 不良 |
| Thomas | 52,125 | 期待以上 |
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 in Power BI