powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Оптимизация запроса
1 сообщений из 1, страница 1 из 1
Оптимизация запроса
    #39614856
ferzmikk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте!

Есть работающий MDX-запрос.
MDX-запрос
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
WITH
//Группа A
SET [Общее SKU1] AS
	{[SKU].[SKU].&[SKU1_1], [SKU].[SKU].&[SKU1_2], [SKU].[SKU].&[SKU1_3], [SKU].[SKU].&[SKU1_4]}
SET [Общее SKU2] AS
	{[SKU].[SKU].&[SKU2_1], [SKU].[SKU].&[SKU2_2], [SKU].[SKU].&[SKU2_3]}
//Группа B		
SET [Общее SKU3] AS 
	{[SKU].[SKU].&[SKU3_1], [SKU].[SKU].&[SKU3_2], [SKU].[SKU].&[SKU3_3]}
//Группа A
SET [Группа A] AS 
	{[Общее SKU1], [Общее SKU2]}
//Группа B
SET [Группа B] AS
	{[Общее SKU3]}
//Все участвующие SKU
SET [Участвующие SKU] AS
	{[Группа A],[Группа B]}

MEMBER [Общее SKU] AS (CASE
	WHEN RANK([SKU].[SKU].CurrentMember, [Общее SKU1]) >0 THEN 'Общее SKU1'
	WHEN RANK([SKU].[SKU].CurrentMember, [Общее SKU2]) >0 THEN 'Общее SKU2'
	WHEN RANK([SKU].[SKU].CurrentMember, [Общее SKU3]) >0 THEN 'Общее SKU3'
END)
MEMBER [Группа] AS (CASE
	WHEN RANK([SKU].[SKU].CurrentMember, [Группа A] )> 0 THEN 'A'
	WHEN RANK([SKU].[SKU].CurrentMember, [Группа B]) > 0 THEN 'B'		
END)
MEMBER [Количество баллов за каждое SKU] AS (CASE
	WHEN [Группа]='A' THEN 15
	WHEN [Группа]='B' THEN 10
END)

SELECT
	{[Общее SKU],
	[Группа],
	[Количество баллов за каждое SKU]}
ON 0,
	[Участвующие продукции]
ON 1
FROM
	PROFIT


Выдает такой результат:
SKUОбщее SKUГруппаКоличество баллов за каждое SKUОбщее SKU1SKU1_1A15Общее SKU1SKU1_2A15Общее SKU1SKU1_3A15Общее SKU1SKU1_4A15Общее SKU2SKU2_1A15Общее SKU2SKU2_2A15Общее SKU2SKU2_3A15Общее SKU3SKU3_1B10Общее SKU3SKU3_2B10Общее SKU3SKU3_3B10
В запросе создал отдельные кортежи , а также строковые меры , чтобы отобразить Общее SKU и Группу .

Запрос будет со временем корректироваться, следовательно, надо будет корректировать где то только кортежи , а где то кортежи и строковые меры . Но чую, что запрос написал как то не оптимально. И это еще только часть запроса.

Как можно оптимизировать данный запрос, чтобы при корректировке не пришлось корректировать в разных местах?
...
Рейтинг: 0 / 0
1 сообщений из 1, страница 1 из 1
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Оптимизация запроса
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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