SQL PARTITION BY (Español)

Resumen: en este tutorial, aprenderá a usar SQL PARTITION BY cláusula para cambiar cómo la función de ventana calcula el resultado.

Descripción general de la cláusula SQL PARTITION BY

La cláusula PARTITION BY es una subcláusula de la cláusula OVER. La cláusula PARTITION BY divide el conjunto de resultados de una consulta en particiones. La función de ventana se opera en cada partición por separado y se recalcula para cada partición.

A continuación se muestra la sintaxis de la cláusula PARTITION BY:

Puede especificar una o más columnas o expresiones para particionar el conjunto de resultados. expression1, expression1, etc., solo pueden hacer referencia a las columnas derivadas de FROM cláusula. No pueden hacer referencia a expresiones o alias en la lista de selección.

Las expresiones de la cláusula PARTITION BY pueden ser expresiones de columna, subconsulta escalar o función escalar. Tenga en cuenta que una subconsulta escalar y una función escalar siempre devuelven un solo valor.

Si omite la cláusula PARTITION BY, todo el conjunto de resultados se trata como una sola partición.

PARTICIÓN POR vs GRUPO POR

La cláusula GROUP BY se usa a menudo junto con una función agregada como SUM() y AVG(). La cláusula GROUP BY reduce el número de filas devueltas al acumularlas y calcular las sumas o promedios para cada grupo.

Por ejemplo, la siguiente declaración devuelve el promedio salario de los empleados por departamentos:

La siguiente imagen muestra el resultado:

La cláusula PARTITION BY divide el conjunto de resultados en particiones y cambia cómo se calcula la función de la ventana. La cláusula PARTITION BY no reduce el número de filas devueltas.

La siguiente declaración devuelve el salario del empleado y también el salario promedio del departamento del empleado:

Aquí está la salida parcial:

En palabras simples, la cláusula GROUP BY es agregada mientras que la cláusula PARTITION BY es analítica.

En este tutorial, ha aprendido acerca de la cláusula SQL PARTITION BY que cambia la forma en que se calcula el resultado de la función de ventana.

  • ¿Le resultó útil este tutorial?
  • SíNo

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *