Como calcular a mediana em sql
Calculando a média de um conjunto é mais desafiador do que simplesmente calcular a média ou média de um conjunto. Adicionar na sintaxe e da complexidade do SQL e a tarefa pode parecer insuperáveis em primeiro lugar. Mas com alguns conceitos simples e alguns exemplos, o cálculo do valor médio é nenhum suor. Este how-to usará Transact-SQL para seus exemplos.
Video: Média, Moda e Mediana - C7 - Clube do Enem
Encontrar a mediana
Entenda a diferença entre a mediana ea média de um conjunto. A mediana é o "valor médio" de um conjunto, enquanto que a média é a média de todos os elementos de um conjunto. Por exemplo, dado um conjunto ordenado de números {1, 2, 6, 9, 10, 11}, a mediana será de 7,5 ([6 + 9] / 2), mas a média é 6,5 ([1 + 2 + 6 + 9 + 10 + 11] / 6). Para calcular a mediana, contar o número de elementos no conjunto. Se a contagem é ainda, ter a média do elemento na posição para ser encontrada pela contagem dos elementos totais e dividindo por dois e a posição encontrada dividindo o número total de elementos por 2 e adicionando uma. Se a contagem for ímpar, tomar o elemento na posição marcada pela contagem total dividido por dois e arredondado para o número inteiro mais próximo.
Video: Estatística - medidas de posição - mediana - dados agrupados - sem intervalo
Criar um conjunto ordenado de números com um novo índice integral. Por exemplo, se os dados numéricos é armazenada no "num" coluna do "dados" tabela, crie uma nova tabela temporária que contém o "num" valor com um novo índice: CREATE TABLE #values (int id não IDENTIDADE NULL (1,1), numérico num (9,4)) INSERT INTO #values (num) num SELECT FROM ORDER dados por Num A instrução ORDER BY é muito importante para o cálculo da mediana.
Video: Estatística medidas de posição - quartis
Selecione os dados da tabela temporária onde o ID é igual a metade da contagem de registros na tabela. Se houver um número ímpar de registros, tomar a média dos dois valores como a mediana final. Isto pode ser conseguido na única consulta em baixo: SELECT MÉDIA (NUM) DE #values v ADERIR (SELECT COUNT (*) como cnt DE #values _v) c EM (c.ID = TECTO (_v.cnt / 2.0) E ( _v.cnt% 2 = 1 - ntc é impar ou (_v.cnt% 2 = 0 - ntc é ainda c.ID E = (_v.cnt / 2,0) + 1))) Esta consulta utiliza uma subconsulta para encontrar a contagem de registros para que o valor médio pode ser determinado. Em ambos os casos de um mesmo contar e uma contagem de estranho, o uso de teto para arredondar para cima (_v.cnt / 2.0) é preciso. (Por exemplo, Mesmo: 6/2 = 3- impar: 02/07 = 3,5, o qual é arredondado para 4) Além disso, quando a contagem é ainda, adicionar 1 a (_v.cnt / 2,0) para se obter o segundo elemento de incluir na média final.
Gorjeta
- Verifica Se você estiver usando uma versão recente do Microsoft SQL Server, tais como 2005 ou 2008, você pode usar "Expressões de tabela comum" em vez de criar uma tabela temporária. Dependendo da configuração do esquema e servidor, isso pode fornecer um aumento no desempenho.
Unid você precisará
Referências
- ligação Média, mediana e moda, e Faixa