SELECT product_id FROM
(
SELECT product_id FROM T WHERE av_id = 3
UNION ALL
SELECT product_id FROM T WHERE av_id = 11
UNION ALL
SELECT product_id FROM T WHERE av_id = 15
) AS F
GROUP BY product_id
HAVING COUNT(*) = 3
SELECT product_id FROM
(
SELECT product_id FROM T WHERE av_id = 3
UNION ALL
SELECT product_id FROM T WHERE av_id = 2
) AS F
GROUP BY product_id
HAVING COUNT(*) = 2
список мастеров на основе выбранной датыЭто табель, список работающих в этот день мастеров. Фактический, составленный на основании графика (то есть кто, когда будет работать с учётом выходных). На его основе выписываются наряды (задания), ведь мастер может выполнять несколько поручений в день (или не выполнять).
Оплата
: код пользователя, дата оплаты, дата начала подписки, дата окончания. Дату начала подписки либо вычислять по последней подписке пользователя, либо запрашивать. Дату окончания — вычислять по тарифу, который действует на указанный период. Возможно потребуется отдельная таблица Тариф
: дата введения, число дней, цена.