When I run this query it outputs the dates from the 14th of Nov to the 31st (well up to the last date in the db which atm is the 6th of dec) twice for each date because we have two order status values for each day.. Which is what I would like it to do..
However I would like to make it so if a particular row does not have a value <> 0 in any of the Orders fields that row is not displayed hence only displaying days/orderstatuses with actual orders and not days with 0's in all the COUNT(CASE WHEN discountofferco de = '##' THEN 1 END) Fields... I have tried so many things and I just cant figure out how to do this
[CODE=sql]SELECT ReceivedDate, OrderStatus, COUNT(CASE WHEN discountofferco de = '88' THEN 1 END) AS OrdersCisco,
SUM(CASE WHEN discountofferco de = '88' THEN ordertotal END) AS SalesCisco, COUNT(CASE WHEN discountofferco de = '89' THEN 1 END)
AS OrdersTDS, SUM(CASE WHEN discountofferco de = '89' THEN ordertotal END) AS SalesTDS,
COUNT(CASE WHEN discountofferco de = '90' THEN 1 END) AS OrdersBerbeeCDW , SUM(CASE WHEN discountofferco de = '90' THEN ordertotal END)
AS SalesBerbeeCDW, COUNT(CASE WHEN discountofferco de = '91' THEN 1 END) AS OrdersQuadGfx,
SUM(CASE WHEN discountofferco de = '91' THEN ordertotal END) AS SalesQuadGfx, COUNT(CASE WHEN discountofferco de = '92' THEN 1 END)
AS OrdersATT, SUM(CASE WHEN discountofferco de = '92' THEN ordertotal END) AS SalesATT,
COUNT(CASE WHEN discountofferco de = '93' THEN 1 END) AS OrdersGlobalCro ssing, SUM(CASE WHEN discountofferco de = '93' THEN ordertotal END)
AS SalesGlobalCros sing, COUNT(CASE WHEN discountofferco de = '94' THEN 1 END) AS OrdersPerformic s,
SUM(CASE WHEN discountofferco de = '94' THEN ordertotal END) AS SalesPerformics , COUNT(CASE WHEN discountofferco de = 'AA' THEN 1 END)
AS OrdersOzburnHes sey, SUM(CASE WHEN discountofferco de = 'AA' THEN ordertotal END) AS SalesOzburnHess ey,
COUNT(CASE WHEN discountofferco de = 'AB' THEN 1 END) AS OrdersFry, SUM(CASE WHEN discountofferco de = 'AB' THEN ordertotal END)
AS SalesFry, COUNT(CASE WHEN discountofferco de = 'AC' THEN 1 END) AS OrdersEMC,
SUM(CASE WHEN discountofferco de = 'AC' THEN ordertotal END) AS SalesEMC, COUNT(CASE WHEN discountofferco de = 'AD' THEN 1 END)
AS OrdersGlasshous e, SUM(CASE WHEN discountofferco de = 'AD' THEN ordertotal END) AS SalesGlasshouse ,
COUNT(CASE WHEN discountofferco de = 'AE' THEN 1 END) AS OrdersSecureWor ks, SUM(CASE WHEN discountofferco de = 'AE' THEN ordertotal END)
AS SalesSecureWork s, COUNT(CASE WHEN discountofferco de = 'AF' THEN 1 END) AS OrdersPDS,
SUM(CASE WHEN discountofferco de = 'AF' THEN ordertotal END) AS SalesPDS, COUNT(CASE WHEN discountofferco de = 'AG' THEN 1 END)
AS OrdersMenashaPk g, SUM(CASE WHEN discountofferco de = 'AG' THEN ordertotal END) AS SalesMenashaPkg ,
COUNT(CASE WHEN discountofferco de = 'A2' THEN 1 END) AS OrdersBelmark, SUM(CASE WHEN discountofferco de = 'A2' THEN ordertotal END)
AS SalesBelmark, COUNT(CASE WHEN discountofferco de = 'A3' THEN 1 END) AS OrdersPlasticIn geniuty,
SUM(CASE WHEN discountofferco de = 'A3' THEN ordertotal END) AS SalesPlasticIng enuity, COUNT(CASE WHEN discountofferco de = 'A4' THEN 1 END)
AS OrdersUFP, SUM(CASE WHEN discountofferco de = 'A4' THEN ordertotal END) AS SalesUFP,
COUNT(CASE WHEN discountofferco de = 'A5' THEN 1 END) AS OrdersStyrene, SUM(CASE WHEN discountofferco de = 'A5' THEN ordertotal END)
AS SalesStyrene
FROM dbo.Orders
WHERE (ReceivedDate BETWEEN '20071114' AND '20071231')
GROUP BY ReceivedDate, OrderStatus
[/CODE]
However I would like to make it so if a particular row does not have a value <> 0 in any of the Orders fields that row is not displayed hence only displaying days/orderstatuses with actual orders and not days with 0's in all the COUNT(CASE WHEN discountofferco de = '##' THEN 1 END) Fields... I have tried so many things and I just cant figure out how to do this
[CODE=sql]SELECT ReceivedDate, OrderStatus, COUNT(CASE WHEN discountofferco de = '88' THEN 1 END) AS OrdersCisco,
SUM(CASE WHEN discountofferco de = '88' THEN ordertotal END) AS SalesCisco, COUNT(CASE WHEN discountofferco de = '89' THEN 1 END)
AS OrdersTDS, SUM(CASE WHEN discountofferco de = '89' THEN ordertotal END) AS SalesTDS,
COUNT(CASE WHEN discountofferco de = '90' THEN 1 END) AS OrdersBerbeeCDW , SUM(CASE WHEN discountofferco de = '90' THEN ordertotal END)
AS SalesBerbeeCDW, COUNT(CASE WHEN discountofferco de = '91' THEN 1 END) AS OrdersQuadGfx,
SUM(CASE WHEN discountofferco de = '91' THEN ordertotal END) AS SalesQuadGfx, COUNT(CASE WHEN discountofferco de = '92' THEN 1 END)
AS OrdersATT, SUM(CASE WHEN discountofferco de = '92' THEN ordertotal END) AS SalesATT,
COUNT(CASE WHEN discountofferco de = '93' THEN 1 END) AS OrdersGlobalCro ssing, SUM(CASE WHEN discountofferco de = '93' THEN ordertotal END)
AS SalesGlobalCros sing, COUNT(CASE WHEN discountofferco de = '94' THEN 1 END) AS OrdersPerformic s,
SUM(CASE WHEN discountofferco de = '94' THEN ordertotal END) AS SalesPerformics , COUNT(CASE WHEN discountofferco de = 'AA' THEN 1 END)
AS OrdersOzburnHes sey, SUM(CASE WHEN discountofferco de = 'AA' THEN ordertotal END) AS SalesOzburnHess ey,
COUNT(CASE WHEN discountofferco de = 'AB' THEN 1 END) AS OrdersFry, SUM(CASE WHEN discountofferco de = 'AB' THEN ordertotal END)
AS SalesFry, COUNT(CASE WHEN discountofferco de = 'AC' THEN 1 END) AS OrdersEMC,
SUM(CASE WHEN discountofferco de = 'AC' THEN ordertotal END) AS SalesEMC, COUNT(CASE WHEN discountofferco de = 'AD' THEN 1 END)
AS OrdersGlasshous e, SUM(CASE WHEN discountofferco de = 'AD' THEN ordertotal END) AS SalesGlasshouse ,
COUNT(CASE WHEN discountofferco de = 'AE' THEN 1 END) AS OrdersSecureWor ks, SUM(CASE WHEN discountofferco de = 'AE' THEN ordertotal END)
AS SalesSecureWork s, COUNT(CASE WHEN discountofferco de = 'AF' THEN 1 END) AS OrdersPDS,
SUM(CASE WHEN discountofferco de = 'AF' THEN ordertotal END) AS SalesPDS, COUNT(CASE WHEN discountofferco de = 'AG' THEN 1 END)
AS OrdersMenashaPk g, SUM(CASE WHEN discountofferco de = 'AG' THEN ordertotal END) AS SalesMenashaPkg ,
COUNT(CASE WHEN discountofferco de = 'A2' THEN 1 END) AS OrdersBelmark, SUM(CASE WHEN discountofferco de = 'A2' THEN ordertotal END)
AS SalesBelmark, COUNT(CASE WHEN discountofferco de = 'A3' THEN 1 END) AS OrdersPlasticIn geniuty,
SUM(CASE WHEN discountofferco de = 'A3' THEN ordertotal END) AS SalesPlasticIng enuity, COUNT(CASE WHEN discountofferco de = 'A4' THEN 1 END)
AS OrdersUFP, SUM(CASE WHEN discountofferco de = 'A4' THEN ordertotal END) AS SalesUFP,
COUNT(CASE WHEN discountofferco de = 'A5' THEN 1 END) AS OrdersStyrene, SUM(CASE WHEN discountofferco de = 'A5' THEN ordertotal END)
AS SalesStyrene
FROM dbo.Orders
WHERE (ReceivedDate BETWEEN '20071114' AND '20071231')
GROUP BY ReceivedDate, OrderStatus
[/CODE]
Comment