Ho fatto una simulazione ma non ho potuto vedere il tuo problema. Ho creato una tabella per test e dopo aver inserito i dati questa è stata la mia scelta. Ma il test era normale!
SELECT icDate,
format(ifnull(sum(icCost), 0),2) as icCost,
count(icDate) as entries
FROM incomp
WHERE icDate BETWEEN '2016-01-01' AND '2016-01-05'
AND compID = 'DDY'
group by icDate;
Questo è il risultato del mio test, esportato in un file CSV:
icDate | icCost | entries
----------------------------------
2016-01-01 | 8,600.00 | 8
2016-01-02 | 5,600.00 | 4
2016-01-03 | 5,400.00 | 3
2016-01-04 | 0.00 | 1
2016-01-05 | 7,050.00 | 7
Il campo icCost è impostato con valore nullo o numero zero? Ricorda alcuni casi in cui i valori null impostati potrebbero essere diversi da altri come vuoti.