Skip to main content



¿Cómo usar las funciones lógicas de Power BI DAX con ejemplos? Microsoft Power BI DAX proporciona varias funciones lógicas, como instrucción IF, AND, OR, NOT, IN, TRUE, FALSE, IFERROR, SWITCH, etc.

 

Para demostrar estas funciones lógicas de Power BI DAX, usamos los datos que se muestran a continuación. Como puede ver, hay 15 registros en esta tabla.

power-bi-dax-logical-functions-1-2902891

Funciones lógicas de Power BI DAX

La siguiente serie de ejemplos muestra la lista de funciones lógicas de DAX en Power BI.

Función IF de Power BI DAX

La función de Power BI DAX If comprueba si la expresión dada es verdadera o falsa. La sintaxis de Power BI DAX If Function es

IF(Expression, True_Info, False_Info)

Como puede ver en la sintaxis anterior, esta función de Power BI DAX IF acepta tres argumentos: el primer argumento es la expresión booleana (que devuelve verdadero o falso). Si el resultado de la expresión es VERDADERO, el segundo argumento regresa; de lo contrario, volverá el tercer argumento.

 

Para demostrar estas funciones lógicas de DAX en Power BI, tenemos que usar Calculated. Para crear una columna, haga clic en el Nueva columna opción bajo la Hogar pestaña, o Modelado lengüeta.

power-bi-dax-logical-functions-2-6893991

Cambiamos el nombre de la columna predeterminada como IfExample. Como puede ver en la captura de pantalla siguiente, mientras escribía, Power BI IntelliSense muestra las sugerencias.

Para el propósito de demostración de Power BI DAX Logical Functions, usamos la columna Ventas.

power-bi-dax-logical-functions-3-6032797

Al hacer clic en Intro o en cualquier tecla, se crea una nueva columna. Y el Código final es

IfExample = IF(EmployeeSales[Sales] > 3000, "Good", "Bad")

La función IF de Power BI DAX anterior verifica si el monto de Ventas de cada columna es mayor que 3000 o no. Si es verdadero, la columna devuelve Bueno; de lo contrario, devuelve Bad.

power-bi-dax-logical-functions-4-6359607

Permítanme agregar esta columna a la tabla que creamos anteriormente. Consulte el artículo Crear informe de tabla para comprender los pasos necesarios para crear una tabla.

power-bi-dax-logical-functions-5-4606836

Función IF anidada de Power BI DAX

En Power BI, puede usar el concepto If anidado de DAX. Quiero decir, una declaración If dentro de otra. La siguiente función IF anidada de Power BI DAX comprueba si el importe de ventas de cada columna es inferior a 1000 o no. Si es verdadero, la columna devuelve Muy malo; de lo contrario, entra en Anidado si

NestedIfEx = IF(EmployeeSales[Sales] < 1000, "Very Bad",                                           
                 IF(EmployeeSales[Sales] > 3000, "Good", "Average" ))
power-bi-dax-logical-functions-6-6843590

Permítanme agregar esta columna anidada a esta tabla.

power-bi-dax-logical-functions-7-6135302

Función DAX AND de Power BI

La función DAX AND de Power BI comprueba varias expresiones. La sintaxis de la función AND de Power BI DAX es

AND(Condition 1, Condition 2)

Como puede ver en la sintaxis anterior, la función DAX AND de Power BI acepta dos argumentos: si ambas condiciones son True, devuelve True. De lo contrario, devuelve False.

Permítanme crear una columna para verificar si las ventas de cada columna son mayores que el promedio y el ingreso anual es mayor que 70000. Si ambas condiciones son verdaderas, entonces la columna devuelve un buen trabajo. De lo contrario, devuelve Bad Job en una columna

AndSales = IF(AND(EmployeeSales[Sales] > AVERAGE(EmployeeSales[Sales]),                              
               EmployeeSales[YearlyIncome] >= 70000), "Good Job", "Bad Job")
power-bi-dax-logical-functions-8-4116668

Función Power BI DAX OR

La función Power BI DAX OR es como una instrucción or en inglés, que es útil para comprobar varias expresiones. La sintaxis de la función Power BI DAX OR es

OR(Condition 1, Condition 2)

Como puede ver en la sintaxis de la función Power BI DAX OR anterior: si ambas condiciones son False, entonces devuelve False; de lo contrario, devuelve True.

Permítanme crear una columna para verificar si las ventas son menores que el promedio o el ingreso anual es mayor que igual a 90000. Si ambas condiciones son falsas, la función devuelve Doing Good; de lo contrario, devuelve la lista de seguimiento en una columna

OrSales = IF(OR(EmployeeSales[Sales] < AVERAGE(EmployeeSales[Sales]),                              
               EmployeeSales[YearlyIncome] >= 90000), "Watchlist", "Doing Good")
power-bi-dax-logical-functions-9-6713920

Permítanme agregar las columnas And Function y Or Function a la tabla que se muestra a continuación.

power-bi-dax-logical-functions-10-7666413

Función Power BI DAX NOT

La función NO de Power BI DAX convierte Verdadero en falso y Falso en Verdadero. Quiero decir, devuelve el resultado opuesto. La sintaxis de la función Power BI DAX NOT es

NOT(Condition)

La siguiente declaración devuelve False si las ventas son superiores a 2000; de lo contrario, devuelve True.

NotSale = NOT(IF(EmployeeSales[Sales] > 2000, "TRUE", "FALSE")
power-bi-dax-logical-functions-11-6054603

Permítanme agregar esta columna No función a esta tabla

power-bi-dax-logical-functions-12-5066218

Función Power BI DAX IN

La función Power BI DAX IN restringe el cálculo a columnas especificadas. Por ejemplo, puede calcular la suma de las ventas de los empleados temporales. La sintaxis de la función Power BI DAX IN es la que se muestra a continuación:

Column IN {field1, field2,...,fieldN}

La siguiente declaración calcula la Suma de Ventas para los empleados cuya educación es Educación, Licenciatura o Maestría. Recuerde, esta es una medida

SalesIN =  CALCULATE(SUM(EmployeeSales[YearlyIncome]) , 
        'EmployeeSales'[Education] IN {"Education", "Bachelors", "Masters Degree"})
power-bi-dax-logical-functions-13-8390946

Permítanme crear una tarjeta usando esta medida. Consulte los artículos Crear una tarjeta y Formatear tarjeta para comprender los pasos necesarios para crear y formatear tarjetas.

power-bi-dax-logical-functions-14-4239816

Función Power BI DAX TRUE

La función Power BI DAX TRUE devuelve un valor lógico verdadero. La siguiente declaración devuelve Verdadero si las ventas son mayores que la venta promedio; de lo contrario, devuelve False

TRUESale = IF(EmployeeSales[Sales] > AVERAGE(EmployeeSales[Sales]), TRUE(), FALSE() )
power-bi-dax-logical-functions-15-2818370

Función FALSE de Power BI DAX

La función Power BI DAX FALSE devuelve un falso lógico. El siguiente código devuelve False si las ventas son inferiores a 2500. De lo contrario, devuelve True

FalseSale = IF(EmployeeSales[Sales] < 2500, FALSE(), TRUE() )
power-bi-dax-logical-functions-16-6116148

Permítanme agregar función verdadera, resultado de función falsa al informe de la tabla

power-bi-dax-logical-functions-17-4894028

Función IFERROR de Power BI DAX

La función Power BI DAX IFERROR es muy útil para controlar el desbordamiento aritmético o cualquier otro error. Simplemente realiza el cálculo y devuelve el resultado, si hay un error, devuelve el valor dentro del segundo argumento.

La sintaxis de la función Power BI DAX IFERROR es

IFERROR(Calculation, Value_If_Error_Occurs)

La siguiente declaración devuelve 100 si ocurre un error. De hecho, todos los registros arrojan un error porque los estamos dividiendo 0

ErrorSale = IFERROR(EmployeeSales[Sales]/0, 100)
power-bi-dax-logical-functions-18-6191106

Permítanme agregar el resultado de la columna Iferror al informe de la tabla

power-bi-dax-logical-functions-19-1584732

Función SWITCH de Power BI DAX

La función SWITCH de Power BI DAX le ayuda a devolver múltiples opciones. Por ejemplo, la función Power BI DAX IF devuelve True o false. Sin embargo, puede utilizar este caso de cambio para obtener varios resultados.

La sintaxis de la función de cambio de Power BI DAX es como se muestra a continuación:

SWITCH(Expression, Option 1, Result 1, Option 2, Result 2, ....., ElseResult)

Si la fecha del mes de contratación es 1, la declaración de abajo devuelve enero, 2 significa febrero, 3 significa marzo, 4 significa abril, 5 significa mayo, 12 significa diciembre de lo contrario, desconocido.

SwitchMonth = SWITCH(MONTH(EmployeeSales[HireDate]), 1, "January", 2, "February", 3, "March", 4, "April", 5, "May", 
                 12, "December", "Unknown")
power-bi-dax-logical-functions-20-7357702

Permítanme agregar esta columna de resultado de la función Power BI DAX Switch a este informe de tabla

power-bi-dax-logical-functions-21-9019250
R Marketing Digital