Saltar al contenido principal Saltar al contenido complementario

Propagación de valores NULL en expresiones

Los valores NULL se propagarán a través de una expresión de acuerdo con unas pocas reglas lógicas.

Funciones

La regla general es que las funciones devuelven NULL cuando los parámetros se salen del rango para el cual se ha definido la función.

Ejemplo:  

  • asin(2) devuelve NULL
  • log(-5) devuelve NULL
  • round(A,0) devuelve NULL

Como resultado de lo arriba expuesto se infiere que las funciones generalmente devuelven NULL cuando cualquiera de los parámetros necesarios para la evaluación son NULL.

Ejemplo:  

  • sin(NULL) devuelve NULL
  • chr(NULL) devuelve NULL
  • if(NULL, A, B) devuelve B
  • if(True, NULL, A) devuelve NULL
  • if(True, A, NULL) devuelve A

La excepción a la segunda regla es que las funciones lógicas comprueban el tipo.

Ejemplo:  

  • isnull(NULL) devuelve True (-1)
  • isnum(NULL) devuelve False (0)

Operadores aritméticos y de cadena

Si se encuentra NULL a cualquier lado de estos operadores, devuelve NULL.

Ejemplo:  

  • A + NULL devuelve NULL
  • A - NULL devuelve NULL
  • A / NULL devuelve NULL
  • A * NULL devuelve NULL
  • NULL / A devuelve NULL
  • 0 / NULL devuelve NULL
  • 0 * NULL devuelve NULL
  • A & NULL devuelve A

Operadores relacionales

Si se encuentra NULL en cualquier lado de los operadores relacionales, se aplican reglas especiales.

Ejemplo:  

  • NULL rel.op NULL devuelve NULL
  • A <> NULL devuelve True (-1)
  • A < NULL devuelve False (0)
  • A <= NULL devuelve False (0)
  • A = NULL devuelve False (0)
  • A >= devuelve False (0)
  • A > NULL devuelve False (0)

¿Esta página le ha sido útil?

No dude en indicarnos en qué podemos mejorar si encuentra algún problema en esta página o su contenido, como, por ejemplo, errores tipográficos, pasos que falta o errores técnicos.

Únase al Programa de modernización de la analítica

Remove banner from view

Modernícese sin comprometer sus valiosas aplicaciones de QlikView con el Programa de modernización de la analítica. Haga clic aquí para obtener más información o contactar con nosotros: ampquestions@qlik.com