SELECT COUNT(*)
FROM `table`
WHERE `date_from` <= :interval_to
AND :interval_from <= IFNULL(`date_to`, CURDATE())
Естественно, все даты должны быть в формате SQL, '2019-03-09'. SET NAMES utf8mb4
, либо в конфиге сервера[client]
default-character-set = utf8mb4
[mysql]
default-character-set = utf8mb4
[mysqld]
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
Не указано общее количество выпущенных йогуртов и количество йогуртов с наклейкой каждого типа.
Если выпущено всего 51 йогурт, то вероятность собрать все наклейки, купив 51 йогурт будет 100%. Если выпущены 51000000 йогуртов, но наклейка типа 50 всего одна, то вероятность собрать все наклейки, купив 51 йогурт, будет гораздо меньше, чем если всех наклеек одинаковое количество