CREATE TABLE sales (
id int primary key,
category VARCHAR(255),
event_date DATE,
sales_volume VARCHAR(255),
return_volume VARCHAR(255)
);
INSERT INTO sales
(id, category, event_date,
sales_volume, return_volume
)
VALUES
("1", "CAT_01", "2018-05-30", "500", NULL),
("2", "CAT_01", "2018-06-05", NULL, "450"),
("3", "CAT_02", "2019-07-08", "700", NULL),
("4", "CAT_02", "2019-07-18", NULL, "670");
The table displays the sales and returns per category.
Now I want to calculate the return_rate by returns/sales.
The result should look like this:
Category sales_volume return_volume return_rate
CAT_01 500 450 0.90
CAT_02 700 670 0.96
I tried to go with this query:
SELECT
category,
sales_volume,
return_volume,
return_volume / sales_volume as return_rate
FROM sales;
However, when I run this query I get NULL for the return_rate.
I assume this issue is casued because the return_volume is in a different row than the sales_volume.
How do I have to modify my query to get the expected result?