Funções de agregação
As funções agregadas retornam um valor único em um conjunto de registros. Você pode usar uma função agregada como parte de uma instrução SELECT, com um nome de campo (por exemplo, AVG(SALÁRIO)) ou em conjunto com uma expressão de coluna (por exemplo, AVG(SALÁRIO * 1.07)).
Você pode preceder a expressão de coluna com o operador DISTINCT para eliminar valores duplicados.
Exemplo
COUNT (DISTINCT sobrenome)
Neste exemplo, somente os valores de sobrenome exclusivos são contabilizados.
|
Função de agregação |
Retorna |
|
|
O total dos valores em uma expressão de campo numérica. Por exemplo, |
|
|
A média dos valores em uma expressão de campo numérica. Por exemplo, |
|
|
O número de valores em qualquer expressão de campo. Por exemplo, |
|
|
O valor máximo em qualquer expressão de campo. Por exemplo, |
|
|
O valor mínimo em qualquer expressão de campo. Por exemplo, |
Exemplos
SELECT SUM (Dados_Venda.Montante) AS agr FROM Dados_Venda
SELECT AVG (Dados_Venda.Montante) AS agr FROM Dados_Venda
SELECT COUNT (Dados_Venda.Montante) AS agr FROM Dados_Venda
SELECT MAX (Dados_Venda.Montante) AS agr FROM Dados_Venda WHERE Dados_Venda.Montante < 3000
SELECT MIN (Dados_Venda.Montante) AS agr FROM Dados_Venda WHERE Dados_Venda.Montante > 3000
Não é possível usar uma função agregada como argumento para outras funções. Se você o fizer, o software FileMaker retornará o código de erro 8309 (“Expressões envolvendo agregações não são suportadas”). Por exemplo, a seguinte instrução não é válida, pois a função agregada SUM não pode ser usada como argumento para a função ROUND:
Exemplo
SELECT ROUND(SUM(Salário), 0) FROM Folha de pagamento
Entretanto, funções agregadas podem usar funções que retornam números como argumentos. A instrução a seguir é válida.
Exemplo
SELECT SUM(ROUND(Salário, 0)) FROM Folha de pagamento