Задавайте вопросы, мы ответим
Вы не зашли.
Доброго времени суток! Задали задачку на собеседовании, ответа не нашел! Хоть собеседование и провалено, хочется узнать ответ( Помогите начинающему ITишнику) Буду очень благодарен)
Имеется база данных. https://cloud.mail.ru/public/5vvP/KqbXzxZkt
в аккаунте вебмастера (user) есть сайты - site
у сайта есть блоки - site_area
у блока есть дизайны - site_area_design_1
Эффективность дизайна (СРМ) определяется по формуле
CPM = partner_gain / view_count * 1000 (доход/кол-во просмотров)
чем выше - тем лучше.
По каждому дизайну в статистике может быть 0,1 и более строк, необходимо учитывать все partner_gain, даже нулевые.
Необходимо для каждого юзера выбрать лучшие дизайны на каждом из используемых блоков. Если статистики нет - значит дизайн плохой. Если это единственный вариант дизайна - значит вариантов нет, выбираем всё-таки его.
В результате должны быть:
сводный список “у кого что показываем” (показываем лучший дизайн из имеющихся)
все использованные при решении запросы
Уточнение: в таблице site_area привязка к родительскому сайту осуществляется не по site_id, но по логически очевидному полю-заменителю.
Можно использовать не единый универсальный запрос, решающий задачу, а последовательность простых максимально быстрых и лёгких запросов с цепочкой рассуждений.
Неактивен