La función MAX devuelve el valor máximo de los valores resultado de evaluar una expresión o el máximo de los dos valores resultantes de evaluar dos expresiones que devuelven un escalar.
MAX(
Expresión
)
MAX(
Expresión1,
Expresión2
)
- Expresión: Expresión que devolverá un conjunto de escalares.
- Expresión1, Expresión2: Expresiones que devuelven un escalar.
La función MAX devuelve el valor máximo obtenido salvo que alguno de los valores implicados sea un valor nulo, en cuyo caso devuelve el valor NULL.
En el caso de que se esté calculando el valor máximo de dos escalares (resultado de evaluar dos expresiones) ambos deberán ser del mismo tipo. En caso contrario la función devuelve un error.
Esta función también puede aplicarse a fechas, devolviéndose la más moderna.
Si el campo Price contiene el precio de los productos vendidos, podemos calcular el valor máximo con el siguiente campo calculado que podemos llevar al lienzo:
MaxPrice =
MAX([Price])
Supongamos ahora que deseamos calcular el valor máximo de los valores -5 y -3. Definimos el siguiente campo calculado:
Max Number =
MAX(-5, -3)
Si lo llevamos al lienzo obtenemos el siguiente resultado:
El resultado devuelto es, como vemos en la imagen anterior, -12, que no es valor correcto. Este error se debe a que Tableau aplica la función de agregación SUM por defecto al campo calculado al llevarlo al lienzo. Para solucionar el problema tendremos que sustituir dicha función de agregación por MIN o MAX, por ejemplo (ambas funciones sirven, con independencia de que en nuestro campo calculado estemos haciendo referencia a la función MAX o MIN):
Si comparamos dos escalares de distinto tipo, la función devuelve un error:
Max Tipos Diferentes =
MAX(5, "a")
Si se comparan valores que incluyen un nulo, la función también devuelve este valor:
Max Nulls =
MAX(5, NULL)
Aunque el nulo resultante no se aprecia (es un valor vacío), en la anterior imagen se está mostrando en pantalla el resultado de la evaluación de ambos valores (5 y NULL).
Si queremos confirmar este hecho, podemos recurrir a la función ISNULL para mostrar el booleano resultante:
Max is Null =
ISNULL(MAX(5, NULL))