More func

This commit is contained in:
2021-10-28 12:59:01 -05:00
parent 5092c10859
commit d105e88992
9 changed files with 102 additions and 25 deletions

27
sql/CFY.sql Normal file
View File

@@ -0,0 +1,27 @@
WITH const as (select "%ROBOSHOT%" as target)
SELECT
description,
-- year,
-- month,
sum(revenue),
sum(quantity)
from
data
where
description like const.target
and year = 2021
and month BETWEEN 7
and 9
group by
description;
select
description,
sum(revenue),
sum(quantity)
from
data
where
description like const.target
and year = 2021
and month BETWEEN 7
and 9;

64
sql/get_top.sql Normal file
View File

@@ -0,0 +1,64 @@
SELECT
description,
sku,
level2,
level3,
rev,
qty,
trend
from
(
SELECT
*,
ROW_NUMBER () OVER (
PARTITION BY level2
ORDER BY
SUM(revenue) DESC
) rownum,
SUM(revenue) OVER (PARTITION BY level2) total,
ROUND(SUM(revenue), 2) as rev,
SUM(quantity) as qty,
trend
FROM
(
select
*,
cast(past as float) / 3 as past,
round(
cast(present as float) /(cast(past as float) / 3.0),
2
) as trend
from
(
select
*,
sum(quantity) FILTER (
WHERE
year = %[1]s
and month between %[3]s
and %[4]s
) over (PARTITION BY description) as past,
sum(quantity) FILTER (
WHERE
year = %[1]s
and month = %[2]s
) over (PARTITION BY description) as present
from
data
)
)
where
year = %[1]s
and month = %[2]s
GROUP BY
description
ORDER BY
total DESC
)
WHERE
rownum <= 10
and rev > 0
order by
(sum(rev) over (
partition by level2
)) desc;

11
sql/schema.sql Normal file
View File

@@ -0,0 +1,11 @@
CREATE TABLE IF NOT EXISTS data (
description text,
sku text,
level2 text,
level3 text,
revenue float,
cost float,
quantity integer,
year integer,
month integer
);