Como encontro o máximo (ou mínimo) de dois números inteiros no Postgres / SQL? Um dos números inteiros não é um valor da coluna.
Vou dar um exemplo de cenário:
Gostaria de subtrair um número inteiro de uma coluna (em todas as linhas), mas o resultado não deve ser menor que zero. Então, para começar, eu tenho:
UPDATE my_table
SET my_column = my_column - 10;
Mas isso pode tornar alguns dos valores negativos. O que eu gostaria (em pseudo código) é:
UPDATE my_table
SET my_column = MAXIMUM(my_column - 10, 0);
postgresql
HRJ
fonte
fonte
Respostas:
Dê uma olhada em MAIOR e MENOR .
fonte
Você deseja o sql embutido
case
:max()
é uma função agregada e obtém o máximo de uma linha de um conjunto de resultados.Edit: oops, não sabia sobre
greatest
eleast
no postgres. Use isso em seu lugar.fonte