Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Oracle BI количество последних покупок клиентов в месяц / 8 сообщений из 8, страница 1 из 1
29.05.2017, 15:26
    #39461659
Evgeny2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle BI количество последних покупок клиентов в месяц
Нужно по каждому клиенту найти его последнюю покупку, а затем посчитать в каждом месяце количество этих последних покупок.
Т.е на языке SQL это может выглядит как-то так:
Код: plsql
1.
2.
3.
4.
5.
6.
7.
select trunc(dt) as dt_month, count(client_id) as client_cnt
  from (select client_id, max(date_) as dt
        from tbl_client_buy
       where date_ < :set_date 
       group by client_id)
 group by trunc(dt)
 order by dt_month desc



Хотелось бы, имея логическую таблицу в репозитории с покупками клиентов, сформировать выборку используя только анализ.
Подскажите, пожалуйста, как это сделать (ну или любой другой вариант)?
...
Рейтинг: 0 / 0
29.05.2017, 17:41
    #39461738
terna
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle BI количество последних покупок клиентов в месяц
Evgeny2,
Столбец с месяцем определяете в анализе как:
max(monthname("date_" ) by "client_id")
Столбец с количеством как
count(distinct "client_id" by max(monthname("date_" ) by "client_id"))
...
Рейтинг: 0 / 0
29.05.2017, 17:46
    #39461743
terna
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle BI количество последних покупок клиентов в месяц
Evgeny2,

либо второй вариант.
Столбец с месяцем так же:
max(monthname("date_" ) by "client_id")
второй столбец просто client_id
ставите под определением формулы галочку "Обрабатывать как столбец атрибутов"
В представлениях добавляете таблицу среза: слева будет месяц, в показателях client_id, на client_id в показателях устанавливаете правило агрегирования "количество различных".
...
Рейтинг: 0 / 0
29.05.2017, 17:50
    #39461750
terna
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle BI количество последних покупок клиентов в месяц
Да, для того, чтобы учитывать год, видимо придется поменять очередность и тогда столбец месяца определяется как:
monthname(max("date_" by "client_id"))||' '||year(max("date_" by "client_id"))
...
Рейтинг: 0 / 0
30.05.2017, 09:26
    #39462006
Evgeny2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle BI количество последних покупок клиентов в месяц
Спасибо terna.
Что-то новенькое увидел....
max (field1 by field2) - сейчас посмотрю, что это за фича.
...
Рейтинг: 0 / 0
31.05.2017, 19:08
    #39463328
Evgeny2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle BI количество последних покупок клиентов в месяц
Evgeny2,

С месяцами получилось. Ура!!!

Но вот нужен еще один анализ, теперь уже по магазинам.
Тут уже
Код: plsql
1.
max(shop_name by cust_id)

не прокатывает, так как последний магазин в котором была осуществлена последняя покупка клиентом определяется по дате -
Код: plsql
1.
max(shop_id) keep (dense_rank last order by date)

!!!

Пытался сделать
Код: plsql
1.
max(EVALUATE_AGGR('max(..) keep (..)') by cust_id)

- физический SQL не строился до конца.
Судя по логам физический SQL сгенирился для первой колонки, и до второй колонки не дошел - это где должен считаться
Код: plsql
1.
 count(cust_id by max(shop_id by cust_id))



Ребята, помогите страдальцу!?

Задача такая:
Для клиентов найти последние магазины где они осуществляли покупки и для этих найденных магазинов посчитать клиентов с их последними покупками.
...
Рейтинг: 0 / 0
05.06.2017, 10:18
    #39465734
terna
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle BI количество последних покупок клиентов в месяц
Evgeny2,
вопрос вообще не тривиальный. Стандартными средствами не представляю как.
Я не очень умею пользоваться эвальюэйтами.
Думаю, конструкцию by с эвальюэйтом использовать бесполезно.
Можно попробовать evaluate_analitic('last_value (%1) over (partition by %2 order by %3)',...)
...
Рейтинг: 0 / 0
05.06.2017, 11:22
    #39465781
Jack Carver
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle BI количество последних покупок клиентов в месяц
...
Рейтинг: 0 / 0
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Oracle BI количество последних покупок клиентов в месяц / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]