Junior — Middle
¿Tiene experiencia en el uso de funciones de ventana al trabajar con consultas SQL?
sobes.tech AI
Respuesta de la IA
Sí, al trabajar con consultas SQL, utilicé funciones de ventana (window functions). Permiten realizar cálculos sobre un conjunto de filas relacionadas con la fila actual, sin agrupar los resultados, lo cual es útil para análisis y consultas complejas.
Funciones de ventana principales:
ROW_NUMBER()— numeración de filas en la ventanaRANK(),DENSE_RANK()— clasificación considerando empatesSUM(),AVG(),COUNT()— funciones agregadas sobre la ventana
Ejemplo: obtener una lista de empleados con su salario y su número de orden por departamento en orden descendente de salario:
SELECT
employee_id,
department_id,
salary,
ROW_NUMBER() OVER (PARTITION BY department_id ORDER BY salary DESC) AS salary_rank
FROM employees;
Aquí, PARTITION BY divide los datos por departamentos, y ORDER BY define el orden dentro de cada departamento. Las funciones de ventana permiten realizar consultas analíticas complejas sin perder detalles.