
SQL avanzado para Data Engineering
Window functions, CTEs recursivas, consultas analíticas, optimización, EXPLAIN ANALYZE, indexación, particionamiento
1¿Qué window function asigna un número secuencial único a cada fila dentro de una partición?
¿Qué window function asigna un número secuencial único a cada fila dentro de una partición?
Respuesta
ROW_NUMBER() asigna un número secuencial único a cada fila dentro de una partición, comenzando en 1. A diferencia de RANK() y DENSE_RANK() que pueden asignar el mismo número a valores iguales, ROW_NUMBER() siempre garantiza números únicos, incluso para valores idénticos en la cláusula ORDER BY.
2¿Cuál es la principal diferencia entre RANK() y DENSE_RANK()?
¿Cuál es la principal diferencia entre RANK() y DENSE_RANK()?
Respuesta
RANK() deja huecos en la numeración después de valores empatados. Por ejemplo, si dos filas están clasificadas como 1, la siguiente será 3. DENSE_RANK() no deja huecos: después de dos filas clasificadas como 1, la siguiente será 2. Esta distinción es importante para análisis de clasificación donde los huecos pueden distorsionar las estadísticas.
3¿Cómo calcular una suma acumulativa (running total) con una window function?
¿Cómo calcular una suma acumulativa (running total) con una window function?
Respuesta
SUM() OVER con ORDER BY sin un frame explícito usa por defecto ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW, que calcula la suma de todas las filas precedentes hasta e incluyendo la fila actual. Este es el comportamiento estándar para crear totales acumulativos en análisis de series temporales o secuenciales.
¿Cuál es el rol de la cláusula PARTITION BY en una window function?
¿Qué función permite acceder al valor de la fila anterior en una window function?
+17 preguntas de entrevista
Otros temas de entrevista Data Engineering
Linux & Shell - Fundamentos
Git & GitHub - Fundamentos
Python avanzado para Data Engineering
Docker - Fundamentos
Google Cloud Platform - Fundamentos
CI/CD y calidad de código
Docker Compose
FastAPI - APIs de datos
Data Lake - Arquitectura e ingesta
BigQuery para Data Engineering
PostgreSQL - Administración
Data Modeling para Data Engineering
Fivetran & Airbyte - Ingesta de datos
dbt - Fundamentos
Apache Airflow - Fundamentos
Kubernetes - Fundamentos
dbt - Funcionalidades avanzadas
Patrones ETL / ELT / ETLT
Apache Airflow - Avanzado
Airflow + dbt - Orquestación de pipelines
PySpark - Procesamiento a gran escala
Google Pub/Sub - Streaming de datos
Apache Beam & Dataflow
Kubernetes - Producción y escalado
Terraform - Infrastructure as Code
Bases de datos NoSQL
Arquitectura Data moderna
Monitoreo y observabilidad
IAM y seguridad de datos
Domina Data Engineering para tu próxima entrevista
Accede a todas las preguntas, flashcards, tests técnicos, ejercicios de code review y simuladores de entrevista.
Empieza gratis