Собесов

ЛокоБанк SQL — выборка для SMS-рассылки по тарифу «амурский тигр»

SQLМногоуровневые JOINСложнаяMiddle

Условие

Подготовить базу для SMS-рассылки по тарифу «амурский тигр». Доступные таблицы:

  • accounts(report_date, acc_num, rest_rub) — счета и остатки на отчётные даты.
  • cards(hash_id, tarif_id, date_issued, date_activated, acc_num, client_id) — карты.
  • catalog(tarif_id, tarif_name) — справочник тарифов.
  • card_status(hash_id, status, date_status) — история статусов карты.
  • tel_catalog(client_id, tel_num) — телефоны клиентов.
  • black_list(client_id) — клиенты, которым нельзя слать.

Сегмент: владельцы карт с тарифом «амурский тигр», активировавшие карту во 2-м квартале 2016, на 2016-07-01 имеющие остаток на счёте карты ≥ 1000 ₽. Последний статус карты = open. Исключить чёрный список. Если у клиента несколько подходящих карт — взять с максимальным остатком.

Текст SMS:

  • Если телефон оканчивается на чётное — обращение по «имя+отчество» + сумма.
  • Если на нечётное — «сообщение с суммой остатка карты».
  • В каждой группе выделить 15% контроль (не отправлять).

На выходе: client_id, hash_id, rest_rub (округлённый до тысячи), tarif_name, tel_num, sms_text, плюс производные поля (месяц активации 1–12, со 2-го по 4-й символ телефона).

Хочешь увидеть разбор?

Зарегистрируйся бесплатно — откроется развёрнутое решение этой задачи и ещё 4 на выбор.

Зарегистрироваться и увидеть разбор
Уже есть аккаунт? Войти