powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Как поставить интервал дат в MDX запрос.
4 сообщений из 4, страница 1 из 1
Как поставить интервал дат в MDX запрос.
    #32743341
McLuad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет.

Есть fact table: fact_article.

CREATE TABLE [fact_article] (
[article_id] [numeric](18, 0) NOT NULL ,
[project_id] bigint,
[publication_date_id] [bigint] NOT NULL DEFAULT ((-1)),
[eav] [numeric](18, 0) NOT NULL CONSTRAINT DEFAULT (0)
) ON [PRIMARY]
GO

Есть таблица которая содержит время.
CREATE TABLE [PublicationDate_DW] (
[date_id] [bigint] NOT NULL ,
[publication_date] [datetime] NOT NULL
) ON [PRIMARY]
) ON [PRIMARY]
GO

На эту таблицу построенно time-dimension PublicationDate c форматом Year.Month.Day

Соответсвенно куб строится на таблицу fact_article (EAV - measure) и связан с time-dimension PublicationDate. Есть еще один dimension – Projects на project_id

Теперь MDX запрос
select
{ [Measures].[Eav] } on columns,
{ [Projects].Members } on rows
from My_CUBE
where [PublicationDate].[YMD].[All PublicationDate].[2003].[May].[5]

Все работает отлично, но мне к примеру нужно ограничить промежуток времени детально, вплоть до дня. То есть увидеть данные между 1-Jan-2003 and 15-Jun-2004
Я видел что есть функция Range “:” которая означеет интервал, но она почему-то не работает. Возможно просто грамматическая ошибка.
Делаю так:
where { [PublicationDate].[YMD].[All PublicationDate].[2003].[Jan].[1] : [PublicationDate].[YMD].[All PublicationDate].[2004].[Огт].[15] }

Как лечить такую проблему ?
...
Рейтинг: 0 / 0
Как поставить интервал дат в MDX запрос.
    #32743394
олапист
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
where { [PublicationDate].[YMD].[All PublicationDate].[2003].[Jan].[1] : [PublicationDate].[YMD].[All PublicationDate].[2004].[Огт ].[15] }
очень смахивает на опечатку :)
...
Рейтинг: 0 / 0
Как поставить интервал дат в MDX запрос.
    #32743410
McLuad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
олапист where { [PublicationDate].[YMD].[All PublicationDate].[2003].[Jan].[1] : [PublicationDate].[YMD].[All PublicationDate].[2004].[Огт ].[15] }
очень смахивает на опечатку :)

да, но не в ней дело. Копировал из Ворда. На самом деле

[PublicationDate].[YMD].[All PublicationDate].[2003].[Jan].[1] : [PublicationDate].[YMD].[All PublicationDate].[2004].[Jul].[15]
...
Рейтинг: 0 / 0
Как поставить интервал дат в MDX запрос.
    #32743836
Dmitry Biryukov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
После where должен стоять тупл, а {} - это множество.
надо примерно так
WITH
MEMBER [PublicationDate].[myPeriod] AS 'Aggregate({[PublicationDate].[YMD].[All PublicationDate].[2003].[Jan].[1] : [PublicationDate].[YMD].[All PublicationDate].[2004].[Jul].[15]})'
select
{ [Measures].[Eav] } on columns,
{ [Projects].Members } on rows
from My_CUBE
Where ([PublicationDate].[YMD].[All PublicationDate].[myPeriod])
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Как поставить интервал дат в MDX запрос.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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