SELECT AVG(cnt)
FROM (SELECT COUNT(*) AS cnt
FROM mytable
WHERE `date` BETWEEN DATE_SUB(NOW(), INTERVAL 3 MONTH) AND NOW()
GROUP BY DATE(`date`)) x
Dengan asumsi Anda memiliki tabel mytable
dengan bidang date
jenis date
, datetime
atau timestamp