Funciones lógicas
En este artículo se presentan las funciones lógicas y sus usos en Tableau. También se muestra cómo crear un cálculo lógico mediante un ejemplo.
Los cálculos lógicos le permiten determinar si una determinada condición es true o false (lógica booleana). Por ejemplo, es posible que desee categorizar valores según determinados límites.
Un cálculo lógico se podría parecer a lo siguiente:
IF [Profit] > 0
THEN 'Profitable'
ELSEIF [Profit] = 0 THEN 'Break even'
ELSE 'Loss'
END
Sintaxis | <expr1> AND <expr2> |
Definición | Realiza la conjunción lógica de dos expresiones. (Si ambos lados son True, la prueba lógica devuelve True). |
Resultado | Booleano (True o False) |
Ejemplo | IF [Season] = "Spring" AND "[Season] = "Fall" "Si tanto (Temporada = Primavera) como (Temporada = Otoño) son true simultáneamente, entonces devuelve: Es el apocalipsis y el calzado no importa". |
Notas | A menudo se utiliza con IF y IIF. Consulte también NOT y O. Si ambas expresiones son Si crea un cálculo en el cual el resultado de una comparación de Nota: El operador |
Sintaxis | CASE <expression>
|
Resultado | Depende del tipo de datos de los valores <then> . |
Definición | Evalúa la |
Ejemplo |
"Mire el campo Estación. Si el valor es Verano, devolverá Sandalias. Si el valor es Invierno, devolverá Botas. Si ninguna de las opciones del cálculo coincide con lo que hay en el campo Estación, devolverá Zapatillas". |
Notas | Usado con WHEN, THEN, ELSE y END. Consejo: Muchas veces puede usar un grupo para obtener los mismos resultados que una función CASE complicada, o usar CASE para reemplazar la funcionalidad de agrupación nativa, como en el ejemplo anterior. Es posible que desee probar cuál es más eficaz para su escenario. |
Sintaxis | CASE <expression>
|
Definición | Una pieza opcional de una expresión IF o CASE utilizada para especificar un valor predeterminado para devolver si ninguna de las expresiones probadas es true. |
Ejemplo | IF [Season] = "Summer" THEN 'Sandals' CASE [Season] |
Notas | Usado con CASE, WHEN, IF, ELSEIF, THEN y END
|
Sintaxis | [ELSEIF <test2> THEN <then2>] |
Definición | Una pieza opcional de una expresión IF utilizada para especificar condiciones adicionales más allá del IF inicial. |
Ejemplo | IF [Season] = "Summer" THEN 'Sandals' |
Notas | Se usa con IF, THEN, ELSE y END
A diferencia de |
Definición | Se utiliza para cerrar una expresión IF o CASE . |
Ejemplo | IF [Season] = "Summer" THEN 'Sandals' "Si Estación = Verano, devolverá Sandalias. Si no, mire la siguiente expresión. Si Estación = Invierno, devolverá Botas. Si ninguna de las expresiones es true, devolverá Zapatillas". CASE [Season] "Mire el campo Estación. Si el valor es Verano, devolverá Sandalias. Si el valor es Invierno, devolverá Botas. Si ninguna de las opciones del cálculo coincide con lo que hay en el campo Estación, devolverá Zapatillas". |
Notas |
Sintaxis | IF <test1> THEN <then1> |
Resultado | Depende del tipo de datos de los valores <then> . |
Definición | Prueba una serie de expresiones que devuelven el valor |
Ejemplo | IF [Season] = "Summer" THEN 'Sandals' "Si Estación = Verano, devolverá Sandalias. Si no, mire la siguiente expresión. Si Estación = Invierno, devolverá Botas. Si ninguna de las expresiones es true, devolverá Zapatillas". |
Notas |
Sintaxis | IFNULL(expr1, expr2) |
Resultado | Depende del tipo de datos de los valores <expr> . |
Definición | Devuelve |
Ejemplo | IFNULL([Assigned Room], "TBD") "Si el campo Sala asignada no es null, devolverá su valor. Si el campo Sala asignada es null, devolverá TBD". |
Notas | Comparar con ISNULL. Consulte también ZN. |
Sintaxis | IIF(<test>, <then>, <else>, [<unknown>]) |
Resultado | Depende del tipo de datos de los valores de la expresión. |
Definición | Comprueba si se cumple una condición (<test> ), y devuelve <then> si la prueba es true, <else> si la prueba es false, y un valor opcional para <unknown> si la prueba es null. Si no se especifica la incógnita opcional, IIF devolverá null. |
Ejemplo | IIF([Season] = 'Summer', 'Sandals', 'Other footwear') "Si Estación = Verano, devolverá Sandalias. Si no, devolverá Otro calzado" IIF([Season] = 'Summer', 'Sandals', "Si Estación = Verano, devolverá Sandalias. Si no, mire la siguiente expresión. Si Estación = Invierno, devolverá Botas. Si ninguna de las dos cosas es true, devolverá Zapatillas". IIF('Season' = 'Summer', 'Sandals', "Si Estación = Verano, devolverá Sandalias. Si no, mire la siguiente expresión. Si Estación = Invierno, devolverá Botas. Si ninguna de las expresiones es true, devolverá Zapatillas". |
Notas |
Es decir, en el siguiente cálculo, el resultado será Rojo, no Naranja, porque la expresión deja de evaluarse tan pronto como A = A se evalúa como true:
|
Sintaxis | <expr1> IN <expr2> |
Resultado | Booleano (True o False) |
Definición | Devuelve TRUE si cualquier valor de <expr1> coincide con cualquier valor de <expr2> . |
Ejemplo | SUM([Cost]) IN (1000, 15, 200) "¿El valor del campo Coste es 1000, 15 o 200?" [Field] IN [Set] "¿El valor del campo está presente en el conjunto?" |
Notas | Los valores en Consulte también WHEN. |
ISDATE
Sintaxis | ISDATE(string) |
Resultado | Booleano (True o False) |
Definición | Indica True si una <string> es una fecha válida. La expresión de entrada debe ser un campo de cadena (texto). |
Ejemplo | ISDATE("2018-09-22") “¿La cadena 2018-09-22 tiene una fecha con formato correcto?” |
Notas | Lo que se considera una fecha válida depende de la configuración regional(El enlace se abre en una ventana nueva) del sistema que evalúa el cálculo. Por ejemplo: En los EE. UU:
En el Reino Unido:
|
Sintaxis | ISNULL(expression) |
Resultado | Booleano (True o False) |
Definición | Devuelve true si la |
Ejemplo | ISNULL([Assigned Room]) "¿El campo Sala asignada es null?" |
Notas | Compárelo con IFNULL. Consulte también ZN. |
Sintaxis | MAX(expression) o MAX(expr1, expr2) |
Resultado | El mismo tipo de datos que el argumento, o NULL si alguna parte del argumento es nula. |
Definición | Indica el máximo de dos argumentos, los cuales deben ser del mismo tipo de datos.
|
Ejemplo | MAX(4,7) = 7 |
Notas | Para cadenas
Para las fuentes de datos de bases de datos, el valor de cadena Para fechas Para las fechas, Como agregación
Como comparación
Consulte también |
Sintaxis | MIN(expression) o MIN(expr1, expr2) |
Resultado | El mismo tipo de datos que el argumento, o NULL si alguna parte del argumento es nula. |
Definición | Indica el mínimo de dos argumentos, los cuales deben ser del mismo tipo de datos.
|
Ejemplo | MIN(4,7) = 4 |
Notas | Para cadenas
Para las fuentes de datos de bases de datos, el valor de cadena Para fechas Para las fechas, Como agregación
Como comparación
Consulte también |
Sintaxis | NOT <expression> |
Resultado | Booleano (True o False) |
Definición | Realiza una negación lógica en una expresión. |
Ejemplo | IF NOT [Season] = "Summer" "Si la temporada no es igual al Verano, entonces devolverá: No uses sandalias. Si no, devolverá: Usa sandalias". |
Notas |
Sintaxis | <expr1> OR <expr2> |
Resultado | Booleano (True o False) |
Definición | Realiza una disyunción lógica en dos expresiones. |
Ejemplo | IF [Season] = "Spring" OR [Season] = "Fall" "Si (Estación = Primavera) o (Estación = Otoño) es true, entonces devolverá Zapatillas". |
Notas | A menudo se utiliza con IF y IIF. Consulte también AND y NOT. Si cualquiera de las expresiones es Si crea un cálculo en el cual el resultado de una comparación de Nota: El operador |
Sintaxis | IF <test1> THEN <then1>
|
Definición | Una parte requerida de una expresión IF , ELSEIF o CASE , utilizada para definir qué resultado devolver si un valor o prueba específica es true. |
Ejemplo | IF [Season] = "Summer" THEN 'Sandals' "Si Estación = Verano, devolverá Sandalias. Si no, mire la siguiente expresión. Si Estación = Invierno, devolverá Botas. Si ninguna de las expresiones es true, devolverá Zapatillas". CASE [Season] "Mire el campo Estación. Si el valor es Verano, devolverá Sandalias. Si el valor es Invierno, devolverá Botas. Si ninguna de las opciones del cálculo coincide con lo que hay en el campo Estación, devolverá Zapatillas". |
Notas |
Sintaxis | CASE <expression>
|
Definición | Una parte requerida de una expresión CASE . Encuentra el primer <value> que coincide con la <expression> y devuelve el <then> correspondiente. |
Ejemplo | CASE [Season] "Mire el campo Estación. Si el valor es Verano, devolverá Sandalias. Si el valor es Invierno, devolverá Botas. Si ninguna de las opciones del cálculo coincide con lo que hay en el campo Estación, devolverá Zapatillas". |
Notas | Usado con CASE, THEN, ELSE y END.
CASE <expression> Los valores que compara |
Sintaxis | ZN(expression) |
Resultado | Depende del tipo de datos de la <expression> , o 0. |
Definición | Devuelve <expression> si no es null, de lo contrario, devuelve cero. |
Ejemplo | ZN([Test Grade]) "Si la calificación de la prueba no es null, devolverá su valor. Si la calificación de la prueba es null, devolverá 0". |
Notas |
Consulte también ISNULL. |
Nota: Algunos de estos son en realidad operadores lógicos y aparecen en negro, no en azul. Para obtener más información, consulte Sintaxis del operador.
Siga los pasos que se indican a continuación para aprender a crear un cálculo lógico.
- En Tableau Desktop, conéctese a la fuente de datos guardada Muestra - Supertienda, que se incluye con Tableau.
- Vaya a una hoja de trabajo.
- Desde el panel Datos, arrastre Estado al estante Filas.
- Desde el panel Datos, arrastre Categoría al estante Filas y colóquelo a la derecha de Estado.
- Desde el panel Datos, arrastre Ventas al estante Columnas.
- Seleccione Análisis > Crear campo calculado.
- En el editor de cálculo que se abre, haga lo siguiente:
- Asigne el nombre KPI al campo calculado.
- Escriba la fórmula siguiente:
SUM([Profit]) > 0
Este cálculo comprueba rápidamente si un miembro es mayor que cero. Si es así, indica true; en caso contrario, indica false.
- Cuando haya terminado, haga clic en Aceptar.
- En el panel Datos, arrastre KPI hasta Color en la tarjeta Marcas.
Ahora puede ver qué categorías están perdiendo dinero en cada estado.
El nuevo campo calculado aparece en Medidas del panel Datos. Igual que con el resto de los campos, puede usarlo en una o más visualizaciones.
Consulte también
Visualizar indicadores de progreso clave