Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / OLAP и DWH Новый топик    Ответить
 Сократить запись  [new]
ferzmikk
Member

Откуда:
Сообщений: 1575
Здравствуйте!

Реально ли сократить следующую запись и не создавать вторую переменную?

WITH
MEMBER [Реализация шт Март 2017] AS 
	IIF(
		ISEMPTY(SUM([Время].[Месяц].&[2012-03-01T00:00:00],[Measures].[Реализация шт])),
		0,
		SUM([Время].[Месяц].&[2012-03-01T00:00:00],[Measures].[Реализация шт]))
...

Получается, если не null SUM([Время].[Месяц].&[2012-03-01T00:00:00],[Measures].[Реализация шт]) два раза считается: первый раз чтобы определить является ли null, а второй считается, чтобы возвратить это значение, а это увеличивает время выгрузки.
29 мар 18, 15:03    [21296563]     Ответить | Цитировать Сообщить модератору
 Re: Сократить запись  [new]
bideveloper
Member

Откуда:
Сообщений: 358
По-моему, SUM тут вообще не нужен.
29 мар 18, 21:58    [21297670]     Ответить | Цитировать Сообщить модератору
 Re: Сократить запись  [new]
ferzmikk
Member

Откуда:
Сообщений: 1575
bideveloper
По-моему, SUM тут вообще не нужен.
А в каком случае SUM был бы нужен?
30 мар 18, 07:12    [21298022]     Ответить | Цитировать Сообщить модератору
 Re: Сократить запись  [new]
alexdr
Member

Откуда:
Сообщений: 215
ferzmikk,

Стесняюсь спросить. А зачем в кубе вместо NULL нужно иметь 0? А потом следить, чтобы в других вычислениях не было деления на этот 0? И делать вместо "разряженного" куба более "плотный", что неминуемо сказывается на его производительности?
30 мар 18, 09:02    [21298127]     Ответить | Цитировать Сообщить модератору
 Re: Сократить запись  [new]
vborets
Member

Откуда:
Сообщений: 140
ferzmikk,

а чем переменная не угодила?
2 апр 18, 12:04    [21304591]     Ответить | Цитировать Сообщить модератору
 Re: Сократить запись  [new]
Дедушка
Member

Откуда: Город трёх революций
Сообщений: 5112
vborets
а чем переменная не угодила?
покажите как? я думаю всем будет интересно :)
2 апр 18, 12:53    [21304838]     Ответить | Цитировать Сообщить модератору
 Re: Сократить запись  [new]
grAlex
Member

Откуда:
Сообщений: 104
ferzmikk
Здравствуйте!

Реально ли сократить следующую запись и не создавать вторую переменную?

WITH
MEMBER [Реализация шт Март 2017] AS 
	IIF(
		ISEMPTY(SUM([Время].[Месяц].&[2012-03-01T00:00:00],[Measures].[Реализация шт])),
		0,
		SUM([Время].[Месяц].&[2012-03-01T00:00:00],[Measures].[Реализация шт]))
...

Получается, если не null SUM([Время].[Месяц].&[2012-03-01T00:00:00],[Measures].[Реализация шт]) два раза считается: первый раз чтобы определить является ли null, а второй считается, чтобы возвратить это значение, а это увеличивает время выгрузки.


WITH
MEMBER [Реализация шт Март 2017] AS 
  CoalesceEmpty(SUM([Время].[Месяц].&[2012-03-01T00:00:00],[Measures].[Реализация шт]),0)
2 апр 18, 13:30    [21305015]     Ответить | Цитировать Сообщить модератору
 Re: Сократить запись  [new]
vikkiv
Member

Откуда: London
Сообщений: 1704
обобщая вклад всех выше:
with member[Реализация шт Март 2017]as CoalesceEmpty(([Время].[Месяц].&[2012-03-01T00:00:00],[Measures].[Реализация шт]),0)
2 апр 18, 15:13    [21305494]     Ответить | Цитировать Сообщить модератору
Все форумы / OLAP и DWH Ответить