Skip to content

Instantly share code, notes, and snippets.

View ajitsamudrala's full-sized avatar

ajitsamudrala

View GitHub Profile
import concurrent.futures as cf
import logging
import math
import numpy as np
import time
import threading
logger_format = '%(asctime)s:%(threadName)s:%(message)s'
logging.basicConfig(format=logger_format, level=logging.INFO, datefmt="%H:%M:%S")
import concurrent.futures as cf
import logging
import math
import numpy as np
import time
import threading
logger_format = '%(asctime)s:%(threadName)s:%(message)s'
logging.basicConfig(format=logger_format, level=logging.INFO, datefmt="%H:%M:%S")
@ajitsamudrala
ajitsamudrala / rolling_avg.sql
Last active March 21, 2023 04:24
SQL Solution
WITH total_transaction_amount AS (SELECT DATE(transaction_time) AS transaction_date, SUM(transaction_amount) AS date_total FROM transactions
WHERE transaction_time BETWEEN '2021-01-29' AND '2021-02-01'
GROUP BY DATE(transaction_time))
SELECT rolling_3_day_transaction_average AS jan_31_rolling_3_day_avg FROM
(SELECT transaction_date, date_total, AVG(date_total) OVER(ORDER BY transaction_date ROWS BETWEEN 2 PRECEDING AND CURRENT ROW)
AS rolling_3_day_transaction_average
FROM total_transaction_amount) AS rolling_avg
WHERE transaction_date = '2021-01-31';