I have a table like status, size, datetime, total_day for the material stays in the place based on size.
I want to get a report like this
20 40
Year Category AF CM BF AF CM BF
2019 22 to Above 3 2 1
Days 1 to 5 1 1 2 1 1
Days 15 to 21
Days 6 to 7
Days 8 to 14
I have used the below script to extract data from my table
SELECT D.STATUS, D.SIZE, TO_CHAR(D.DATETIME, 'YYYY') AS YEAR,TOTAL_DAY,
CASE WHEN TOTAL_DAY BETWEEN 1 AND 5 THEN 'Days 1 to 5'
ELSE '22 to Above'
END AS "dwCategory",
CASE
WHEN D.SIZE BETWEEN '20' AND '25' THEN '20'
ELSE '40'
END AS "SIZE_RANGE"
FROM TOTAL_TIME D WHERE D.DATETIME BETWEEN '01-JUN-2019' AND '30-JUN-2019';
STATUS SIZE YEAR TOTAL DAY dwCategory SIZE_RANGE AF 22 2019 8 22 to Above 20 CM 22 2019 5 Days 1 to 5 20 BF 45 2019 6 22 to Above 40 AF 45 2019 6 22 to Above 40 AF 45 2019 5 Days 1 to 5 40 AF 45 2019 11 22 to Above 40 AF 22 2019 8 22 to Above 20 AF 22 2019 6 22 to Above 20 CM 45 2019 1 Days 1 to 5 40 AF 45 2019 2 Days 1 to 5 40 BF 22 2019 1 Days 1 to 5 20
Anyone can help me to tune the script to make the pivot table as I'm very new Oracle SQL