Вы не указали, хотите ли вы это в M или DAX.Решение в М-коде:
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WCgkKdVXSUXJz9AlG0LE6GBJgLkgcRYB0cfItQOYjm4PqdCw24DCIkMW4bSDfJGL9gMPTxIYRqjGxAA==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type text) meta [Serialized.Text = true]) in type table [col1 = _t, col2 = _t, col3 = _t]),
#"Changed Type" = Table.TransformColumnTypes(Source,{{"col1", type logical}, {"col2", type logical}, {"col3", type logical}}),
#"Added Conditional Column" = Table.AddColumn(#"Changed Type", "AllTrue_M", each if [col1] = false then false else if [col2] = false then false else if [col3] = false then false else true)
in
#"Added Conditional Column"
Или добавить вычисляемый столбец в DAX:
CalculatedColumn = IF(
'Table'[col1]=TRUE() && 'Table'[col2]=TRUE() && 'Table'[col3]=TRUE()
, "ALL TRUE"
, "NOT ALL TRUE"
)
В качестве альтернативы, проверьте другие комбинации:
CalculatedColumn = SWITCH(TRUE(),
'Table'[col1]=TRUE() && 'Table'[col2]=TRUE() && 'Table'[col3]=TRUE(), "ALL TRUE",
'Table'[col1]=FALSE() && 'Table'[col2]=FALSE() && 'Table'[col3]=FALSE(), "ALL FALSE",
"MIXED")
Действительно, это интересноПроблема, как сделать проверку на множественные условия.К сожалению, функция AND
в DAX принимает только два аргумента (условия).Вы можете проверить несколько условий с помощью оператора & &.
https://docs.microsoft.com/en-us/dax/dax-operator-reference#logical-operators