SELECT ProductId ,COUNT(1) OrderCount ,CASE WHEN COUNT(1) = 1 THEN SUM(MAN)/MANCount ELSE AVG(MAN) END MAN ,CASE WHEN COUNT(1) = 1 THEN SUM(PUR)/PURCount ELSE AVG(PUR) END PURFROM (SELECT DENSE_RANK() over (partition by ProductId order by OrderId desc) as OrderRank
ORDER BY    CASE        WHEN SUBSTRING(OrderID, 3, 2) < '10'        THEN '20' + RIGHT(OrderID, 7)        ELSE '19' + RIGHT(OrderID, 7)    END