Эта функция поможет округлить дату.
SELECT CASE
WHEN date_format(date_field, '%d') < '16' THEN
date_format(date_field, '%Y-%m-01')
ELSE
date_format( DATE_ADD(date_field, INTERVAL 1 MONTH) , '%Y-%m-01')
END as 'date_rounded'
FROM my_table;
Это будет до 1-го числа текущего месяца, если число меньше 16, в противном случае дата будет округлена до 1-го числа следующего месяц