No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Window functions

24/34
Recursos

Aportes 38

Preguntas 0

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

No sé por qué a Platzi le cuesta tanto que sus explicaciones sean interactivas. Todo lo que dice Israel es correcto, pero en ves de tratar de explicarlo todo con palabras, deberían cambiar esa diapositiva con la palabra Ranking y poner una imagen que muestre el concepto explicado, por ejemplo:

sí, ya se que podemos hacer nuestra propia búsqueda en internet para “profundizar” (de hecho, eso me tocó hacer con este tema de las window functions en cursos pasados y con otros muchos temas) pero la idea de pagar Platzi es para que estos conceptos queden claros con las explicaciones dadas en estas clases.


Y sí, ya se que más adelante se explicará mejor esto, pero si el concepto no queda claro en esta clase podría decirse que es tiempo perdido esta clase.

Enviaré el correo para que Platzi sugiriendo este tema de ilustración y que analice la idea de contratar animadores graficos que trabajen con los profesores de los cursos para que en clases como esta pueda realizar animaciones en la digitacion del query, su resultado, como cambian los valores, los diagramas entidad relacion etc…creo que haria mas intuitivas las clases,

Bueno como nadie dijo nada, hello world!

PostgreSQL window function List

  • Las window function se ocupan para entender la relación que guarda un registro en particular con respecto al resto del dataset, ya sea una tabla, una partición o un query.
  • Generalmente se encargan de hacer rankings

https://www.postgresql.org/docs/12/functions-window.html

Les comparto este articulo muy bueno de Towards data science que explica paso a paso las window functions
https://towardsdatascience.com/a-guide-to-advanced-sql-window-functions-f63f2642cbf9

Antes de ver esta clase, les recomiendo ir al curso “Curso Practico de SQL” y tomar la clase 27 y 28: “Windows Functions” y “Particiones y agregaciones” respectivamente.

Creo que entiendo el concepto, pero me hubiera gustado ver algunas imágenes para enriquecer un poco la explicación.

El curso empezó bien pero se fue al tacho desde la mitad en adelante. No se ilustran los conceptos y a fin de cuentas se tiene un noción muy básica del sistema, de 'data science' no tiene mucho

24. Window functions

  • Ranking

Las Window Functions (funciones de ventana) son una característica avanzada en SQL que permite realizar cálculos y operaciones en un conjunto de filas relacionadas dentro de una consulta, sin afectar el resultado general de la consulta.

Las Window Functions proporcionan un mecanismo para realizar operaciones de agregación, cálculos de rangos y clasificaciones en un conjunto de filas definido por una ventana (window) en lugar de en todo el conjunto de resultados de la consulta.

Algunos ejemplos de Window Functions son:

  1. Funciones de agregación: Puedes calcular sumas, promedios, valores máximos o mínimos, entre otros, en un conjunto de filas definido por una ventana. Por ejemplo, puedes calcular la suma acumulativa de ventas por mes para cada producto en una tabla.
  2. Funciones de clasificación y ranking: Puedes asignar clasificaciones o rankings a las filas basadas en un criterio específico dentro de una ventana. Por ejemplo, puedes determinar el ranking de los mejores vendedores por región en función de sus ventas.
  3. Funciones de desplazamiento: Puedes acceder a los valores de filas anteriores o siguientes dentro de una ventana. Por ejemplo, puedes calcular la diferencia entre el valor actual y el valor anterior en una serie temporal.

Las Window Functions se utilizan en combinación con la cláusula OVER, que define la ventana sobre la cual se aplicarán las operaciones. La cláusula OVER especifica la partición de filas y el ordenamiento dentro de la ventana.

Las Window Functions son especialmente útiles cuando se requiere realizar cálculos complejos en un conjunto de filas relacionadas sin la necesidad de realizar subconsultas o joins adicionales. Proporcionan una forma más eficiente y elegante de realizar este tipo de operaciones en SQL.

Es importante destacar que las Window Functions no están disponibles en todos los sistemas de bases de datos, por lo que su disponibilidad puede depender del motor de base de datos que estés utilizando.

Me gustan las clases del profesor israel, pero esta mi nivel de confusión a subido a otro nivel.
Creo se pudieron realizar mas ejemplos o representaciones graficas que permitan entender mejor el tema.

Esta parte sino la entienden es porque no vieron el curso Practico de SQL, por eso seria mejor q revisen ese curso y no se salteen.

No pierdan tiempo en tratar de entender este video y vayan a: https://platzi.com/clases/2059-practico-sql/33013-window-functions/

En el curso de SQL práctico aquí en Platzi, con el mismo profesor, se realizan muchos ejemplos utilizando Windows Functions, lo cual ayuda a entenderlo mejor. <https://platzi.com/cursos/practico-sql/>

Chicos para mas detalle esta clase les recomiendo ver esta clase: https://platzi.com/clases/2059-practico-sql/33013-window-functions/

Se hace necesario en esta clase en particular un ejemplo practico, mucha teoría hace que no se apropie el concepto general de lo que expone el profesor, además hace que se vea poco importante

Hacer una relación de una fila con las demás, ese concepto así es duro de dirigir.
Me quedo mas claro cuando se dice el tema de un ranking, que es un tipo de relación de una fila con las otras.

Creo que deberia empezar diciendo que los ejemplos los veremos mas adelante.
Esta clase puede ser mejor!
**No entiendo porque no usan el tiempo del video y usar diagramas, flujos, algo que explique mejor lo que dice el facilitador**

a ya, no entendí 😃

Las funciones de ventana permiten realizar cálculos sobre un conjunto de filas relacionadas en una consulta, sin necesidad de agrupar los datos

SELECT 
    c.nombre AS categoria,
    p.titulo AS pelicula,
    p.duracion AS duracion_pelicula,
    AVG(p.duracion) OVER (PARTITION BY c.categoria_id) AS promedio_duracion_categoria
FROM 
    public.peliculas p
JOIN 
    public.peliculas_categorias pc ON p.pelicula_id = pc.pelicula_id
JOIN 
    public.categorias c ON pc.categoria_id = c.categoria_id;

Tal vez está estructura haga un poco más clara la sintaxis de una window function

SELECT	
		RANK() OVER (PARTITION BY department ORDER BY salary DESC) 
			AS dept_ranking,
		department,
		employee_id, 
		full_name, 
		salary
FROM employee;

Ami me gustó mucho este articulo y me ayudó a entenderlas un montón, esta en inglés pero nada que el traductor no haga 😉

Esta clase esta un poco perdida , les recomiendo ir a CURSO PRACTICO DE SQL donde explico esto de manera clara , específicamente en la ultima clase

Hice esta consulta a modo de Window Function.

SELECT titulo, duracion, (SELECT AVG(duracion) FROM peliculas) AS promedio, duracion - (SELECT AVG(duracion) FROM peliculas) AS diferencia
FROM peliculas
GROUP BY titulo, duracion
ORDER BY duracion DESC;

El esta dando un repaso de lo que ya vimos en otro curso además acabo de decir que vamos a profundizar en el tema mas adelante

muy interesante el curso en general

Dense Rank

Percentile Rank

rango

Row number

Ranking

A ponerlo en práctica

Con los ejemplos me imagino que quedará más clara está función dirigida a Rankings y sus relaciones.
Incluyo enlace para profundizar en este concepto:

Ya quiero verlo en el proyecto.

Te haré compañia jajajaja

Excelente

“El término ventana describe el conjunto de filas en las que opera la función de ventana. Una función de ventana devuelve valores de las filas de una ventana ".