En PostgreSQL, el MAX()
La función calcula el máximo de los valores de entrada no nulos y devuelve el resultado.
Esta función se puede utilizar en cualquier tipo numérico, de cadena, de fecha/hora o de enumeración, así como en inet
, interval
, money
, oid
, pg_lsn
, tid
y arreglos de cualquiera de estos tipos.
Ejemplo
Aquí hay un ejemplo rápido para demostrar cómo funciona:
SELECT MAX(productprice)
FROM products;
Resultado:
245.00
En este caso, productprice
es una columna en los products
mesa.
Para darle un poco más de contexto, aquí hay una instantánea de la tabla:
+----------+---------------------------------+--------------+ | vendorid | productname | productprice | +----------+---------------------------------+--------------+ | 1001 | Left handed screwdriver | 25.99 | | 1001 | Right handed screwdriver | 25.99 | | 1001 | Long Weight (blue) | 14.75 | | 1001 | Long Weight (green) | 11.99 | | 1002 | Sledge Hammer | NULL | | 1003 | Chainsaw | 245.00 | | 1003 | Straw Dog Box | 55.99 | | 1004 | Bottomless Coffee Mugs (4 Pack) | 9.99 | +----------+---------------------------------+--------------+
Podemos ver el productprice
columna para la que obtuvimos el valor máximo en nuestro ejemplo.
Mi tabla real contiene más columnas, pero esto le muestra la columna y su contexto dentro de la tabla.
NULL
Valores
El MAX()
la función ignora cualquier NULL
valores. En nuestra tabla de muestra anterior, el mazo tiene NULL
en su productprice
columna, pero eso fue ignorado en nuestro MAX()
ejemplo.
Resultados filtrados
El MAX()
opera en las filas devueltas por la consulta. Entonces, si filtra los resultados, el resultado de MAX()
reflejará eso.
Filtremos los resultados:
SELECT MAX(productprice)
FROM products
WHERE vendorid = 1001;
Resultado:
25.99
Valores de fecha y hora
El MAX()
la función se puede usar en valores de fecha y hora:
Supongamos que tenemos una tabla llamada pets
con los siguientes datos:
+-------+---------+------------+ | petid | petname | dob | +-------+---------+------------+ | 1 | Fluffy | 2020-11-20 | | 2 | Fetch | 2019-08-16 | | 3 | Scratch | 2018-10-01 | | 4 | Wag | 2020-03-15 | | 5 | Tweet | 2020-11-28 | | 6 | Fluffy | 2020-09-17 | | 7 | Bark | NULL | | 8 | Meow | NULL | +-------+---------+------------+
Podemos obtener el valor máximo del dob
columna, así:
SELECT MAX(dob)
FROM pets;
Resultado:
2020-11-28
Datos del personaje
Cuando se usa con columnas de datos de caracteres, MAX()
encuentra el valor más alto en la secuencia de clasificación.
Ejemplo:
SELECT MAX(petname)
FROM pets;
Resultado:
Wag