Funciones STDDEV_SAMP y STDDEV_POP
Las funciones STDDEV_SAMP y STDDEV_POP devuelven la muestra y la desviación estándar de población de un conjunto de valores numéricos (entero, decimal o de punto flotante). El resultado de la función STDDEV_SAMP es equivalente a la raíz cuadrada de la varianza de muestra del mismo conjunto de valores.
STDDEV_SAMP y STDDEV son sinónimos para la misma función.
Sintaxis
STDDEV_SAMP | STDDEV ( [ DISTINCT | ALL ] expression) STDDEV_POP ( [ DISTINCT | ALL ] expression)
La expresión debe ser un tipo de datos entero, decimal o de punto flotante. Independientemente del tipo de datos de la expresión, el tipo de retorno de esta función es un número de doble precisión.
nota
La desviación estándar se calcula utilizando aritmética de punto flotante, que puede dar como resultado una leve imprecisión.
Notas de uso
Cuando la desviación estándar de la muestra (STDDEV o STDDEV_SAMP) se calcula para una expresión que consta de un valor único, el resultado de la función es NULL no 0.
Ejemplos
La siguiente consulta devuelve el promedio de valores en la columna VENUESEATS de la tabla VENUE, seguido de la desviación estándar de la muestra y la desviación estándar de la población del mismo conjunto de valores. VENUESEATS es una columna INTEGER. La escala del resultado se reduce a 2 dígitos.
select avg(venueseats), cast(stddev_samp(venueseats) as dec(14,2)) stddevsamp, cast(stddev_pop(venueseats) as dec(14,2)) stddevpop from venue; avg | stddevsamp | stddevpop -------+------------+----------- 17503 | 27847.76 | 27773.20 (1 row)
La siguiente consulta devuelve la desviación estándar de muestra para la columna COMMISSION en la tabla SALES. COMMISSION es una columna DECIMAL. La escala del resultado se reduce a 10 dígitos.
select cast(stddev(commission) as dec(18,10)) from sales; stddev ---------------- 130.3912659086 (1 row)
La siguiente consulta convierte la desviación estándar de muestra para la columna COMMISSION en un número entero.
select cast(stddev(commission) as integer) from sales; stddev -------- 130 (1 row)
La siguiente consulta devuelve tanto la desviación estándar de muestra y la raíz cuadrada de la varianza de muestra para la columna COMMISSION. Los resultados de estos cálculos son semejantes.
select cast(stddev_samp(commission) as dec(18,10)) stddevsamp, cast(sqrt(var_samp(commission)) as dec(18,10)) sqrtvarsamp from sales; stddevsamp | sqrtvarsamp ----------------+---------------- 130.3912659086 | 130.3912659086 (1 row)