Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / SSAS 2016 MDX Помогите посчитать количество быстрее / 5 сообщений из 5, страница 1 из 1
04.05.2017, 09:56
    #39448401
Denis@nk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SSAS 2016 MDX Помогите посчитать количество быстрее
Добрый день. Пытаюсь посчитать количество клиентов по которым есть продажи и за текущий месяц и за предыдущий:

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
Member c AS
count(
  FILTER
    (
        [Customer].[ID].members,
        SUM({[Date].[Dates].CURRENTMEMBER.PREVMEMBER}, [Measures].[Count]) > 0
        AND 
        SUM({[Date].[Dates].CURRENTMEMBER}, [Measures].[Count]) > 0
    )
)

SELECT {c} ON 0
FROM [Cube]
WHERE ([Date].[Dates].[Month-Year].&[April 2017]



1) Можно ли написать это как то по другому, чтобы работало быстрее?
2) Может глупость спрошу, но все же пока не до конца понимаю. Подскажите где почитать про то что есть выражения контекстнозависимые (зависят от фильтров) и независимые. Вот текущее выражение не будет зависеть от дополнительного фильтра если я добавлю условие в WHERE.
...
Рейтинг: 0 / 0
04.05.2017, 10:05
    #39448420
Voyager_lan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SSAS 2016 MDX Помогите посчитать количество быстрее
Denis@nk,

отвечу ссылкой на п.1
...
Рейтинг: 0 / 0
04.05.2017, 10:13
    #39448424
Denis@nk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SSAS 2016 MDX Помогите посчитать количество быстрее
Voyager_lan,
спасибо большое.
...
Рейтинг: 0 / 0
04.05.2017, 11:01
    #39448477
Denis@nk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SSAS 2016 MDX Помогите посчитать количество быстрее
А можно как то множествами получить результат?
Хорошо работает такая конструкция:
Код: sql
1.
COUNT(EXISTING NONEMPTY([Customer].[ID].children, ([Date].[Dates].CURRENTMEMBER.PREVMEMBER:[Date].[Dates].CURRENTMEMBER, [Measures].[Count])))



Но так я получаю количество клиентов у которых есть продажи или в одном периоде или в предыдущем. Как оставить только тех у которых есть продажи и там и там?
...
Рейтинг: 0 / 0
04.05.2017, 12:41
    #39448650
vikkiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SSAS 2016 MDX Помогите посчитать количество быстрее
Denis@nk,

можно просто (intersect или exists) пересечение nonempty сетов из периода 1 и 2 а потом на этот остаток повесить count
...
Рейтинг: 0 / 0
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / SSAS 2016 MDX Помогите посчитать количество быстрее / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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