Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
Январь 17, 2018, 08:02:58 am

Автор Тема: Определить кол-во новых клиентов в интервале, QlikView  (Прочитано 751 раз)

Оффлайн Евгений

  • Новичок
  • *
  • Сообщений: 25
  • Рейтинг: +2/-0
    • Просмотр профиля
Добрый день! Есть такая проблемка.

Описание и логика
В заказах присутствую товары из разных категорий. Для определения кол-ва заказов (Orders) считаю веса:

Например, рассчитываем вес (кол-во заказов) для раздела "Home" : 1\2 + 1\3 + 1 = 1.83.
В таблице выражение вот такое:
Sum(Aggr(
Count( DISTINCT Product_id) / Count( DISTINCT TOTAL <Order_id> Product_id),
 Order_id, category_name))

Тут все хорошо.

Проблема
Нужно определить кол-во новых клиентов за выбранный интервал. 
Логика расчета должна быть аналогичная, т.е. через веса. Новый клиент - дата создания первого заказ в интервал если попадает.

Т.е. если интервал выбран 01.01.2015 - 02.01.2015 , то, как я понимаю, клиент с номером 1 уже не должен учитываться как-то в расчете. Как рассчитать этих новых клиентов и заполнить второй стоблик?
Скриншот прилагается. Буду очень благодарен за помощь!

Исходные данные такие:

Order:
User_id   Order_id   Date_insert
1   1   01.01.2015 12:33:12
1   4   01.01.2014 12:33:12
2   2   01.01.2015 11:23:11
3   3   02.01.2015 13:12:16

Basket:
Order_id   Product_id
1   1
1   2
2   1
2   2
2   3
3   1
4   1

Category:
Product_id   category_name
1   Home
2   Garden
3   Jewelry

Оффлайн Евгений

  • Новичок
  • *
  • Сообщений: 25
  • Рейтинг: +2/-0
    • Просмотр профиля
Вроде бы сам разобрался. А вдруг кому пригодится, вот так можно:
Sum(Aggr(
Count( DISTINCT {<User_id = {"=min( {<Date=>}Date)>=vStartDate"}>} Product_id) /
Count( DISTINCT total <Order_id> {<User_id = {"=min( {<Date=>}Date)>=vStartDate"}>} Product_id) ,
 Order_id, category_name))