# Tutorial SQL MIN e MAX: Determinar valor mínimo e máximo

SQL MIN e MAX são funções agregadas que permitem **determinar os menores e maiores valores** em conjuntos de dados, tabelas e colunas. Essas funções são usadas para otimizar e acelerar consultas de dados, proporcione uma avaliação eficiente dos dados para identificar tendências, anomalias ou processos.

## O que é SQL MIN e MAX?

SQL MIN e MAX são funções agregadas de SQL que realizam cálculos com valores numéricos ou cadeias de caracteres e retornam um único valor. Dependendo da consulta e dos parâmetros, você pode usar `MIN` e `MAX` para encontrar **valores mínimos e máximos** em conjuntos de dados, tabelas, colunas ou linhas, bem como comparar os menores e maiores valores. Devido à **aceleração significativa das avaliações de dados complexos** que elas proporcionam, as funções `MIN` e `MAX` se tornaram indispensáveis em SQL. Em pouco tempo, é possível filtrar tabelas de produtos, preços ou custos por valores mínimos e máximos ou identificar anomalias. Dependendo dos parâmetros opcionais e das consultas, as funções podem ser combinadas com outros comandos SQL, como [SQL WHERE](https://www.ionos.com/pt-br/digitalguide/servidor/configuracao/sql-where/), [SQL JOIN](https://www.ionos.com/pt-br/digitalguide/servidor/configuracao/sql-join/), `HAVING` ou `GROUP BY`.

Dica Você gostaria de aprender mais sobre [SQL](https://www.ionos.com/pt-br/digitalguide/servidor/conhecimento/o-que-e-sql/), mas ainda não se aprofundou muito na linguagem de programação? Então, nossa [introdução ao SQL com exemplos](https://www.ionos.com/pt-br/digitalguide/servidor/configuracao/aprender-sql-com-exemplos/) lhe dará uma visão geral inicial.

## Sintaxe de SQL MIN e MAX

As funções `MIN` e `MAX` são adequadas **para consultas simples de dados** e, em combinação com outros [operadores SQL](https://www.ionos.com/pt-br/digitalguide/servidor/configuracao/operadores-sql/), **para análises complexas**.

A sintaxe é a seguinte:

```sql
MIN(coluna ou cadeia de caracteres)
MAX(coluna ou cadeia de caracteres)
```

Se você deseja aplicar a função a valores numéricos selecionados em seus conjuntos de dados, combine `MIN` e `MAX` com os **comandos SQL `SELECT` e a cláusula `FROM`**. Com esses comandos, você seleciona a tabela desejada e as colunas ou linhas pertinentes da seguinte forma:

```sql
SELECT MIN(nome_da_coluna ou cadeia_de_caracteres) FROM nome_da_tabela;
SELECT MAX(coluna ou cadeia_de_caracteres) FROM nome_da_tabela;
```

Com parâmetros e comandos adicionais, é possível definir a consulta com precisão. Esses incluem:

- `DISTINCT`: Elimina duplicatas e linhas repetidas nas consultas de dados, gerando listas exclusivas.
- `WHERE`: Exclui determinados conjuntos de dados antes de filtrar com `MIN` e `MAX`, focando apenas em subconjuntos desejados.
- `GROUP BY`: Agrupa conjuntos de dados consultados em uma ou mais colunas, como por região ou categoria, permitindo a análise de tendências ou padrões.
- `HAVING`: Filtra resultados após a agregação de valores mínimos e máximos, exibindo apenas os resultados que atendem a certos critérios.
- `BETWEEN`: Filtra, em combinação com `MIN` e `MAX`, os resultados dentro de determinados intervalos de valores.
- `JOIN`: Permite combinar valores mínimos e máximos de uma ou mais tabelas na tabela de destino.

## Aplicações de SQL MIN e MAX

As possibilidades de uso da função SQL `MIN` e `MAX` são quase ilimitadas, especialmente em combinação com outros parâmetros. Alguns casos de uso incluem:

- Filtragem dos preços mais altos e mais baixos em tabelas de produtos.
- Determinação dos maiores e menores arquivos.
- Análise salarial de funcionários.
- Exibição da frequência de cadeias de caracteres, palavras ou valores em um conjunto de dados.
- Detecção de anomalias pela superação ou queda abaixo de valores médios ou limites.
- Identificação de picos de desempenho ou fraquezas de performance.
- Determinação de tendências com base em valores médios e relatórios por região, equipe, categoria de produto ou serviço.
- Análise de estoques e produtos.
- Restrição de análises de dados em grandes conjuntos de dados.

Dica Um gerenciamento de dados eficiente inclui a solução de hospedagem correta para sistemas de gerenciamento de banco de dados. Com o [SQL Server Hosting](https://www.ionos.com/cloud/sql-server-hosting "SQL Server Hosting — IONOS") da IONOS, você conta com ofertas adequadas às suas necessidades. Aproveite tempos de acesso rápidos, alta performance, segurança contra falhas e proteção de dados conforme os padrões alemães.

## Exemplos de uso de SQL MIN e MAX

Para ilustrar, vamos explicar como aplicar SQL MIN e MAX com exemplos práticos. Para isso, selecionamos **uma tabela com produtos e seus respectivos preços**. Uma dica: para nomear a coluna de `MIN` ou `MAX` na tabela de destino, utilize o alias `AS` na sintaxe, seguido do nome desejado para a coluna.

Tabela de exemplo:

<table>
  <thead>
    <tr>
      <th><strong>Produto</strong></th>
      <th><strong>Preço</strong></th>
      <th><strong>Categoria</strong></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Shampoo</td>
      <td>R$ 22,90</td>
      <td>Cabelos</td>
    </tr>
    <tr>
      <td>Loção para as mãos</td>
      <td>R$ 45,99</td>
      <td>Mãos</td>
    </tr>
    <tr>
      <td>Creme para os pés</td>
      <td>R$ 11,99</td>
      <td>Pés</td>
    </tr>
    <tr>
      <td>Loção corporal</td>
      <td>R$ 9,99</td>
      <td>Corpo</td>
    </tr>
  </tbody>
</table>

Se você quiser identificar **o produto com o menor ou maior preço** na tabela de produtos e exibi-lo como uma única linha, a sintaxe será a seguinte:

`MIN`:

```sql
SELECT MIN(preço) FROM produtos;
```

`MAX`:

```sql
SELECT MAX(preço) FROM produtos;
```

Caso queira identificar ambos os valores na tabela de destino, use a seguinte sintaxe e defina com o alias `AS` a coluna com os valores mínimo e máximo:

```sql
SELECT MIN(preço) AS min_preco, MAX(preco) AS max_preco FROM produtos;
```

Em combinação **com outros comandos e parâmetros, você pode refinar sua consulta** ou limitá-la a determinadas categorias. Se quiser exibir os valores mínimos e máximos em uma categoria de produto conforme a categoria, utilize o comando SQL `GROUP BY` adicionalmente:

```sql
SELECT categoria,
MIN(preço) AS min_preço, MAX(preço) AS max_preço
FROM produtos
GROUP BY categoria
```

Agora, na tabela de destino, você obterá os menores e maiores valores **organizados por categorias** dos produtos.

Combinadas com SQL `HAVING`, as funções `MIN` e `MAX` permitem que você **filtre os valores obtidos de acordo com uma condição definida**. Por exemplo, em uma tabela de produtos, você pode especificar que os valores mínimos de uma categoria não devem ser incluídos no resultado se estiverem abaixo de um determinado valor. A sintaxe nesse caso seria:

```sql
SELECT categoria,
MAX(preço) AS max_preço
FROM produtos
GROUP BY categoria
HAVING MIN(preço) > 10;
```

Na nossa tabela de exemplo, a Loção corporal com R$ 9,99 não seria incluída na tabela de destino.

## Alternativas à função SQL MIN e MAX

Como SQL MIN e MAX é uma das **funções agregadas do SQL**, existem outras funções similares que podem ser usadas para calcular valores agregados. Essas incluem:

- `AVG`: Com [SQL AVG](https://www.ionos.com/pt-br/digitalguide/servidor/configuracao/sql-avg/), você pode calcular valores médios de tabelas ou colunas selecionadas, como as temperaturas médias de meses em um ano.
- `COUNT`: Com [SQL COUNT](https://www.ionos.com/pt-br/digitalguide/servidor/configuracao/sql-count/), você conta o número de registros em uma tabela ou coluna selecionada.
- `SUM`: Com [SQL SUM](https://www.ionos.com/pt-br/digitalguide/servidor/configuracao/sql-sum/), você obtém a soma de todos os valores em uma coluna selecionada.
- `BETWEEN`: Com [SQL BETWEEN](https://www.ionos.com/pt-br/digitalguide/servidor/configuracao/sql-between/), você analisa dados dentro de um intervalo de valores definido.
- `LIKE`: O operador [SQL LIKE](https://www.ionos.com/pt-br/digitalguide/servidor/configuracao/sql-like/) retorna valores numéricos ou cadeias de caracteres que correspondem a um padrão predefinido, com ou sem caracteres curingas.


This is a markdown version of: [https://www.ionos.com/pt-br/digitalguide/servidor/configuracao/sql-min-e-max/](https://www.ionos.com/pt-br/digitalguide/servidor/configuracao/sql-min-e-max/) for AI/LLM consumption.