tipos funciona español ejemplos desde datos como comandos cero aprender postgresql

funciona - postgresql español



¿Cómo obtener min/max de dos enteros en Postgres/SQL? (2)

¿Cómo puedo encontrar el máximo (o mínimo) de dos enteros en Postgres / SQL? Uno de los enteros no es un valor de columna.

Daré un ejemplo de escenario:

Me gustaría restar un entero de una columna (en todas las filas), pero el resultado no debe ser menor a cero. Entonces, para empezar, tengo:

UPDATE my_table SET my_column = my_column - 10;

Pero esto puede hacer que algunos de los valores sean negativos. Lo que me gustaría (en pseudo código) es:

UPDATE my_table SET my_column = MAXIMUM(my_column - 10, 0);


Desea el case sql en línea:

set my_column = case when my_column - 10 > 0 then my_column - 10 else 0 end

max() es una función agregada y obtiene el máximo de una fila de un conjunto de resultados.

Editar: Vaya, no sabía nada sobre el greatest y el least en postgres. Usa eso en cambio.