Crear
Descargar
Obtener Plan Académico
Compartir juego
Intégralo en tu plataforma

Puedes integrar el juego en un LMS compatible con LTI 1.1 o LTI 1.3 como Canvas, Moodle, o Blackboard. De esta manera podrás guardar las puntuaciones automáticamente en el libro de calificaciones de esa plataforma.
Descargar
Has superado el número máximo de juegos que puedes integrar en Google Classroom con tu Plan actual.

Para integrar tantos juegos como quieras en Google Classroom, necesitas un Plan Académico o un Plan Comercial.

Has superado el número máximo de juegos que puedes integrar en Microsoft Teams con tu Plan actual.

Para integrar tantos juegos como quieras en Microsoft Teams, necesitas un Plan Académico o un Plan Comercial.

La descarga de juegos es una característica exclusiva para usuarios con un Plan Académico o un Plan Comercial.

Obtén ahora tu Plan Académico o Comercial y comienza a integrar tus juegos en tu LMS, web o blog.

Si lo deseas, puedes descargar un juego de prueba aquí y probar su integración:

Mastering SQL Window Functions

Completar Frases

Jugadas 0

Sobre esta actividad

Drills to master window functions in SQL

Creada por

Estados Unidos

Descarga la versión para jugar en papel

Crea tu propio juego gratis desde nuestro creador de juegos
Compite contra tus amigos para ver quien consigue la mejor puntuación en esta actividad

Top juegos

%
Anónimo
Anónimo
%
%
%
Has superado el número máximo de juegos que puedes imprimir con tu Plan actual.

Para imprimir tantos juegos como quieras, necesitas un Plan Académico o un Plan Comercial.

Imprime tu juego
Mastering SQL Window Functions
 

Completar Frases

Mastering SQL Window FunctionsVersión en línea

Drills to master window functions in SQL

por Good Sam
1

ORDER OVER sale_date SELECT sale_date amount sales FROM amount AS running_total BY SUM

Problem 1 : Calculate Running Total
Question : You have a table sales ( sale_date DATE , amount DECIMAL ) . Write a SQL query to calculate a running total of amount , ordered by sale_date .

Solution :

, ,
( ) ( )
;

2

PRECEDING 3 sale_date BETWEEN ROW OVER FROM ORDER sale_date amount amount moving_avg AND BY sales amount FROM SELECT sale_date OVER ORDER FOLLOWING SUM ROW PRECEDING sale_date ORDER BY AVG BY FROM OVER CURRENT 3 ROWS sales amount amount sales BETWEEN amount ROWS SELECT amount amount FROM AND ROWS sales ROWS ORDER sale_date sale_date CURRENT BETWEEN as CURRENT sales AND as 6 ROW current_avg as ORDER CURRENT BY sale_date BETWEEN sum_to_end sale_date as AND AND FROM SELECT moving_avg ROWS as OVER OVER ROW BY amount UNBOUNDED CURRENT running_total ROW SELECT sale_date AVG UNBOUNDED PRECEDING SUM FOLLOWING BETWEEN AVG

Problem 2 : Calculate Moving Average
Question : Calculate a 7 - day moving average of sales from the sales table .

Solution :

, ,
( ) ( )
;

Example 2 : Fixed Range with Both PRECEDING and FOLLOWING

, ,
( ) ( )
;

This calculates the average amount using a window that includes three rows before , the current row , and three rows after the current row .

Example 3 : From Start of Data to Current Row
, ,
( ) ( )
;

This query computes a running total starting from the first row in the partition or result set up to the current row .

Example 4 : Current Row to End of Data
SELECT sale_date , amount ,
( ) ( )
;

This sums the amount from the current row to the last row of the partition or result set .

Example 5 : Current Row Only
, ,
( ) ( )
;

This calculates the average of just the current row's amount , which effectively returns the amount itself .

3

ORDER customers DESC SELECT RANK FROM BY total_purchases rank total_purchases AS id OVER name

Problem 3 : Rank Customers by Sales

Question : From a table customers ( id INT , name VARCHAR , total_purchases DECIMAL ) , rank customers based on their total_purchases in descending order .

Solution :

, , ,
( ) ( )
;
Explanation : RANK ( ) assigns a unique rank to each row , with gaps in the ranking for ties , based on the total_purchases in descending order .

4

amount ORDER row_num sale_date ROW_NUMBER() OVER SELECT FROM sales AS BY sale_date

Problem 4 : Row Numbering

Question : Assign a unique row number to each sale in the sales table ordered by sale_date .

Solution :

, ,
( )
;

Explanation : ROW_NUMBER ( ) generates a unique number for each row , starting at 1 , based on the ordering of sale_date .

5

PARTITION purchase_date OVER customer_id BY customer_id AS purchases first_purchase MIN SELECT FROM

Problem 5 : Find the First Purchase Date for Each Customer
Question : Given a table purchases ( customer_id INT , purchase_date DATE ) , write a SQL query to find the first purchase date for each customer .

Solution :

, ( ) ( )
;

Explanation : MIN ( ) window function is used here , partitioned by customer_id so that the minimum purchase date is calculated for each customer separately .

6

amount AS previous_day_amount 1 amount ORDER LAG change_in_amount FROM LAG amount sale_date 1 BY amount SELECT BY OVER ORDER sale_date OVER AS sales_data sale_date

The LAG function is very useful in scenarios where you need to compare successive entries or calculate differences between them . For example , calculating day - over - day sales changes :


SELECT sale_date ,
amount ,
LAG ( amount , 1 ) OVER ( ORDER BY sale_date ) AS previous_day_amount ,
amount - LAG ( amount , 1 ) OVER ( ORDER BY sale_date ) AS change_in_amount
FROM sales_data ;



,
,
( , ) ( ) ,
- ( , ) ( )
;

In this query , the change_in_amount field computes the difference in sales between consecutive days . If the LAG function references a row that doesn't exist ( e . g . , the first row in the dataset ) , it will return NULL unless a default value is specified .


The LAG window function in SQL is used to access data from a previous row in the same result set without the need for a self - join . It's a part of the SQL window functions that provide the ability to perform calculations across rows that are related to the current row . LAG is particularly useful for comparisons between records in ordered data .

How LAG Works :
LAG takes up to three arguments :

Expression : The column or expression you want to retrieve from a preceding row .
Offset : An optional integer specifying how many rows back from the current row the function should look . If not specified , the default is 1 , meaning the immediate previous row .
Default : An optional argument that provides a default value to return if the LAG function attempts to go beyond the first row of the dataset .
Syntax :
LAG ( expression , offset , default ) OVER ( [ PARTITION BY partition_expression ] ORDER BY sort_expression )


¿Estás seguro que quieres abandonar la página?

Al abandonar la página perderás el progreso del juego.