AVG Função de agregação AVG

AVG é uma função de agregação que calcula a média de uma expressão sobre um conjunto de linhas (consulte ). AVG somente é permitida nas expressões que têm como resultado tipos de dado numéricos.

Sintaxe AVG ( [ DISTINCT | ALL ] Expressão )

DISTINCTqualificador na função de agregação AVG O qualificador DISTINCT elimina as linhas duplicadas. O qualificador ALL mantém as linhas duplicadas. ALL é o valor padrão, se nem ALL nem DISTINCT for especificado. Por exemplo, se uma coluna contiver os valores 1.0, 1.0, 1.0, 1.0 e 2.0, AVG(coluna) retornará um valor menor que AVG(DISTINCT coluna).

Somente é permitida uma expressão de agregação DISTINCT por ExpressãoSeleção. Por exemplo, a seguinte consulta não é válida: SELECT AVG (DISTINCT TEMPO_VÔO), SUM (DISTINCT MILHAS) FROM VÔOS

A expressão pode conter várias referências a colunas ou expressões, mas não pode conter outra agregação ou subconsulta. Deve ter como resultado um tipo de dado numérico do SQL-92. Portanto, podem ser chamados métodos que têm como resultado tipos de dado SQL-92. Se uma expressão for avaliada como NULL, a agregação saltará este valor.

O tipo de dado do resultado é o mesmo da expressão em que opera (nunca estoura). Por exemplo, a seguinte consulta retorna o INTEGER 1, que pode não ser o esperado: SELECT AVG(C1) FROM (VALUES (1), (1), (1), (1), (2)) AS MINHA_TABELA (C1)

Se for desejada uma precisão maior, a expressão deverá ser convertida para outro tipo de dado: SELECT AVG(CAST (C1 AS DOUBLE PRECISION)) FROM (VALUES (1), (1), (1), (1), (2)) AS MINHA_TABELA (c1)