Pokud od data odečtete aktuální den v měsíci a přidáte 1, máte začátek aktuálního měsíce. Můžete použít tuto logiku:
where time between date_sub(curdate(), interval day(curdate()) - 1 day) and
date_sub(date_add(date_sub(curdate(), interval day(curdate()) - 1 day), interval 1 month), interval -1 day)