PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Função MIN() no PostgreSQL


No PostgreSQL, o MIN() A função calcula o mínimo dos valores de entrada não nulos e retorna o resultado.

Esta função pode ser usada em qualquer tipo numérico, string, data/hora ou enum, bem como inet , interval , money , oid , pg_lsn , tid e matrizes de qualquer um desses tipos.

Exemplo


Aqui está um exemplo rápido para demonstrar como funciona:
SELECT MIN(productprice) 
FROM products;

Resultado:
9.99

Nesse caso, productprice é uma coluna nos products tabela.

Para dar um pouco mais de contexto, aqui está um instantâneo da tabela:
+----------+---------------------------------+--------------+
| 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 o productprice coluna para a qual obtivemos o valor mínimo em nosso exemplo.

Minha tabela real contém mais colunas, mas isso mostra a coluna e seu contexto dentro da tabela.

NULL Valores


O MIN() função ignora qualquer NULL valores. Em nossa tabela de amostra acima, a marreta tem NULL em seu productprice coluna, mas isso foi ignorado em nosso MIN() resultados.

Resultados filtrados


O MIN() A função opera nas linhas retornadas pela consulta. Portanto, se você filtrar os resultados, a saída de MIN() vai refletir isso.

Vamos filtrar os resultados:
SELECT MIN(productprice) 
FROM products
WHERE vendorid = 1001;

Resultado:
11.99

Valores de data e hora


O MIN() função pode ser usada em valores de data e hora:

Suponha que tenhamos uma tabela chamada pets com os seguintes dados:
+-------+---------+------------+
| 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 obter o valor mínimo do dob coluna, assim:
SELECT MIN(dob) 
FROM pets;

Resultado:
2018-10-01

Dados de caracteres


Quando usado com colunas de dados de caracteres, MIN() encontra o valor mais baixo na sequência de agrupamento.

Exemplo:
SELECT MIN(petname) 
FROM pets;

Resultado:
Bark