Pular para o conteúdo principal
Documentos
FunçõesExpressõesKeywordsDeclaraçõesCláusulas

Função MAX() do MySQL

A função `MAX()` do MySQL é usada para encontrar o valor máximo em um conjunto de valores. É comumente aplicado para recuperar o maior valor de uma coluna em uma tabela de banco de dados.

Uso
A função `MAX()` é frequentemente usada em consultas agregadas para determinar o valor mais alto em uma coluna numérica, de data ou de cadeia de caracteres. Ela pode ser combinada com outras cláusulas SQL, como `GROUP BY`, para que você possa realizar análises de dados mais complexas.

SELECT MAX(column_name)
FROM table_name
[WHERE condition];

Nessa sintaxe, `MAX(column_name)` retorna o maior valor encontrado em `column_name` da `table_name` especificada. Observe que os valores `NULL` são ignorados por padrão ao determinar o valor máximo.

Exemplos

1. Uso básico

SELECT MAX(salary)
FROM employees;

Essa consulta recupera o salário mais alto da tabela `employees`.

2. Usando MAX() com a cláusula WHERE

SELECT MAX(price)
FROM products
WHERE category = 'Electronics';

Este exemplo encontra o preço máximo entre os produtos da categoria "Eletrônicos".

3. MAX() com GROUP BY

SELECT department, MAX(salary)
FROM employees
GROUP BY department;

Aqui, a consulta identifica o salário mais alto em cada departamento da tabela `employees`, usando a cláusula `GROUP BY` para segmentar os dados por departamento.

4. MAX() com HAVING

SELECT department, MAX(salary)
FROM employees
GROUP BY department
HAVING MAX(salary) > 50000;

Essa consulta lista os departamentos em que o salário mais alto é superior a 50.000, demonstrando o uso de `HAVING` para filtragem adicional após `GROUP BY`.

Dicas e práticas recomendadas

  • Use com tipos de dados numéricos, de data ou de cadeia de caracteres. Embora seja normalmente aplicado a colunas numéricas ou de datas, `MAX()` também pode ser usado em colunas de strings para encontrar o valor lexicograficamente mais alto.
  • Combine com GROUP BY para análise segmentada. Isso ajuda a obter valores máximos em diferentes categorias ou grupos.
  • Filtre dados com WHERE para obter resultados específicos. Limite o conjunto de dados usando `WHERE` antes de aplicar `MAX()` para consultas direcionadas.
  • Considere a indexação de colunas. Colunas de índice frequentemente usadas com `MAX()` para otimizar o desempenho, especialmente com grandes conjuntos de dados. O ganho de desempenho é significativo quando você envolve colunas indexadas.
  • Manuseio de NULL. Lembre-se de que os valores `NULL` são ignorados ao calcular o valor máximo.

Aprimoramento de SQL para iniciantes

Adquira as habilidades de SQL para interagir com seus dados e consultá-los.
Comece a aprender de graça