Header Posts

Mejores prácticas para Condicionales IF, IIF y CASE en Tableau

En Modux deseamos que conozca todas las opciones de condicionales en Tableau, por eso, nuestro Analytics Ace Daniel Jiménez te muestra como y cuando utilizar las sentencias IF, IFF y CASE. Estas funciones se utilizan cuando es necesario evaluar una condición y a partir del resultado de la condición lógica ejecutar un cálculo, pero ¿cuáles son las principales diferencias entre ellas? Primero vamos a explicar las similitudes y diferencias entre IF y IIF.

  • Caso 1 IF THEN ELSE END: Esta cláusula nos permite evaluar una condición si se cumple, realizar una acción si no, realizar otra, la sintaxis sería: IF condición 1 THEN valor 1 ELSE valor 2 END:


  • Caso 2 IFF: La sintaxis en este caso es: IIF(condición, valor 1, valor 2)


  • Caso 3 IF THEN ELSEIF THEN END: La sintaxis sería: IF condición 1 THEN Valor 1 ELSEIF condición 2 THEN Valor 2 END.


    Observe la leve pero importante diferencia entre los distintos casos, al usar IF THEN ELSE END, el resultado puede ser Grande o Pequeño solamente, al usar la cláusula IIF, los resultados serían 3 ( Grande, Pequeño o Nulo), al igual que con IF ELSEIF.

    En Tableau la función recomendada para utilizar en los 3 casos vistos es la función IIF, ya que se esta teniendo en cuenta la calidad de los datos (si hay nulos), y es más eficiente computacionalmente hablando. Sin embargo, tenga en cuenta que si hay cálculos anidados o es una formula compleja, lo mas recomendable es utilizar la forma numero 3 (IF ELSEIF) ya que es más fácilmente entendible y por consiguiente en caso de errores editable, por ejemplo en el siguiente caso:


  • Caso 4 CASE WHEN THEN WHEN THEN END: La función CASE trabaja de forma similar al IF THEN ELSEIF THEN END visto en la parte superior, pero con la diferencia de que no podemos hacer comparaciones >, >=, <, <= o distinto (<>). Esto quiere decir que solo hace comparaciones de igual. Esto la hace perfecta para trabajar con dimensiones o parámetros que tienen valores finitos. La sintaxis es: CASE [Campo] WHEN Valor a comparar 1 THEN Valor 1 WHEN Valor a comparar 2 THEN Valor 2 END. Por ejemplo, un uso sencillo sería el siguiente:


    O el caso más utilizado, al realizar un parámetro para cambiar el tipo de medida:



Conclusiones:

  • Como se puede observar, todas las funciones son útiles, ya que cada una puede realizar ciertas acciones de forma más eficiente que otra.
  • La cláusula IFF es recomendable en caso de formulaciones sencillas donde se necesitan tener en cuenta los Nulos, si no es necesario tenerlos en cuenta, un IF THEN ELSE END es suficiente.
  • En el caso de crear formulaciones avanzadas y condicionales anidados la formula recomendada por su eficiencia es el IF THEN ELSEIF THEN END.
  • Para realizar sentencias con parámetros o para casos específicos en dimensiones o medidas, la función más recomendada es el CASE, ya que esta función trabaja por casos, computacionalmente es la más eficiente, pero no aplica para todos los casos.


Esperamos este par de simples tips los ayuden a ahorrar tiempo y ser más eficientes en la construcción de sus Dashboards. En Modux, existimos para liberar tus datos.


Por favor, activa JavaScript en tu navegador para completar este formulario.
Acepto ser contactado por Modux y la política de protección y uso de datos



Descargue Tableau Gratis

Por favor, activa JavaScript en tu navegador para completar este formulario.

Contáctenos

Por favor, activa JavaScript en tu navegador para completar este formulario.
Acepto ser contactado por Modux y la política de protección y uso de datos

Descargue Tableau

Por favor, activa JavaScript en tu navegador para completar este formulario.
Acepto ser contactado por Modux y la política de protección y uso de datos *