Files
clickHouseData/ClickHouse_Calculated_Query/OSA %.sql
T

30 lines
1.1 KiB
SQL

--I want to calculate OSA% WHERE use column skuavailability
--:- OSA% calculation =
--1. apply filter on MSL where msl=1
--2. calculate Y+N = count all the records of skuavailability
--3. calculate Y = count of all the Y in skuavailability
--4. OSA% calculation = (Y/ Y+N)*100
-- For Numinator
SELECT * FROM "DaburIndia_BI"."Stock_Details" WHERE "MSL" = '1' AND "skuavailability" = 'Y' and
"VisitDate" between '2026-04-01' and '2026-04-30';
-- For Demunitor
SELECT * FROM "DaburIndia_BI"."Stock_Details" WHERE "MSL" = '1' AND skuavailability IN ('Y','N')
"VisitDate" between '2026-04-01' and '2026-04-30';
-- OSA % FOR MonthWise
SELECT SUM(CASE WHEN MSL = '1' AND skuavailability IN ('Y','N') THEN 1 ELSE 0 END) AS Total_Y_N,
SUM(CASE WHEN MSL = '1' AND skuavailability = 'Y' THEN 1 ELSE 0 END) AS Total_Y,
ROUND(SUM(CASE WHEN MSL = '1' AND skuavailability = 'Y' THEN 1 ELSE 0 END) * 100.0/NULLIF(SUM(CASE
WHEN MSL = '1' AND skuavailability IN ('Y','N') THEN 1 ELSE 0 END),0),2) AS OSA_Percentage
FROM DaburIndia_BI.Stock_Details
where "VisitDate" between '2026-04-01' and '2026-04-01';