File tree Expand file tree Collapse file tree 1 file changed +46
-0
lines changed Expand file tree Collapse file tree 1 file changed +46
-0
lines changed Original file line number Diff line number Diff line change @@ -232,3 +232,49 @@ from daily_sales;
232
232
select *,
233
233
lead(sales_amount, 1) over(order by sales_date) as next_day_sales
234
234
from daily_sales;
235
+
236
+ # Diff between lead and lag
237
+ select *,
238
+ lag(sales_amount, 1) over(order by sales_date) as pre_day_sales
239
+ from daily_sales;
240
+
241
+ select *,
242
+ lead(sales_amount, 1) over(order by sales_date) as next_day_sales
243
+ from daily_sales;
244
+
245
+
246
+ # How to use Frame Clause - Rows BETWEEN
247
+ select * from daily_sales;
248
+
249
+ select *,
250
+ sum(sales_amount) over(order by sales_date rows between 1 preceding and 1 following) as prev_plus_next_sales_sum
251
+ from daily_sales;
252
+
253
+ select *,
254
+ sum(sales_amount) over(order by sales_date rows between 1 preceding and current row) as prev_plus_next_sales_sum
255
+ from daily_sales;
256
+
257
+ select *,
258
+ sum(sales_amount) over(order by sales_date rows between current row and 1 following) as prev_plus_next_sales_sum
259
+ from daily_sales;
260
+
261
+ select *,
262
+ sum(sales_amount) over(order by sales_date rows between 2 preceding and 1 following) as prev_plus_next_sales_sum
263
+ from daily_sales;
264
+
265
+ select *,
266
+ sum(sales_amount) over(order by sales_date rows between unbounded preceding and current row) as prev_plus_next_sales_sum
267
+ from daily_sales;
268
+
269
+ select *,
270
+ sum(sales_amount) over(order by sales_date rows between current row and unbounded following) as prev_plus_next_sales_sum
271
+ from daily_sales;
272
+
273
+ select *,
274
+ sum(sales_amount) over(order by sales_date rows between unbounded preceding and unbounded following) as prev_plus_next_sales_sum
275
+ from daily_sales;
276
+
277
+ # Alternate way to esclude computation of current row
278
+ select *,
279
+ sum(sales_amount) over(order by sales_date rows between unbounded preceding and unbounded following) - sales_amount as prev_plus_next_sales_sum
280
+ from daily_sales;
You can’t perform that action at this time.
0 commit comments