Вам не нужен COUNT (), но вместо этого СУММА (CASE / WHEN)
Select
Created,
count(*) TotalCnt,
SUM( CASE WHEN Field1 = 'E-mail' then 1 else 0 END ) as EMailCnt,
SUM( CASE WHEN Field1 = 'Cell Phone' then 1 else 0 END ) as CellCnt,
SUM( CASE WHEN RedeamedCondition then 1 else 0 END ) as RedeamCnt
from
tblCustomer
group by
created
order by
created
Примечание ... если созданный является датой / временем, вы должны иметь группу, основанную ТОЛЬКО на части даты "созданного", в противном случае вы будете получать разные значения за каждую секунду ... Из другого сообщения, следующее получает только часть даты даты и времени, в основном удаляя часы: минуты: секунды часть
DATEADD(dd, 0, DATEDIFF(dd, 0, created))
или, если это не имеет смысла, вы можете просто сделать это
datepart( yy, created) as GrpYear,
datepart( mm, created) as GrpMonth,
datepart( dd, created) as GrpDay, ... rest of columns.....