Мне нужно разделить столбец new_status на «новый» или «существующий» на основе:
- если подписка клиента в течение первого цикла (1 месяц или 1 год в зависимости от его plan_interval и использования сегодняшнего дня в качестве сравнения) будет «новой». В противном случае, он больше не новый (после первого цикла), поэтому он будет «Существующим».
- подписка начинается сразу после trial_end, НО если она не завершена, подписка начинается после даты создания.
примечание: клиент может иметь более одной подписки, последняя подписка будет учитываться для всех клиентов new_status.
customer|old_status|created |trial_end|plan_interval|new_status
x |active |2/15/2019|3/15/2019|month |
y |active |5/19/2018| - |year |
z |active |2/5/2018 |3/6/2018 |month |
a |active |3/1/2017 | - |month |
a |active |3/5/2018 | - |year |
желаемый результат:
customer|old_status|created |trial_end|plan_interval|new_status
x |active |2/20/2019|3/20/2019|month |New
y |active |5/19/2018| - |year |New
z |active |2/5/2018 |3/6/2018 |month |Existing
a |active |3/1/2017 | - |month |New
a |active |3/5/2018 | - |year |New