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

Есть 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
18.10.2004, 19:24
    #32743394
олапист
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как поставить интервал дат в MDX запрос.
where { [PublicationDate].[YMD].[All PublicationDate].[2003].[Jan].[1] : [PublicationDate].[YMD].[All PublicationDate].[2004].[Огт ].[15] }
очень смахивает на опечатку :)
...
Рейтинг: 0 / 0
18.10.2004, 19:33
    #32743410
McLuad
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как поставить интервал дат в MDX запрос.
олапист 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
19.10.2004, 10:28
    #32743836
Dmitry Biryukov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как поставить интервал дат в MDX запрос.
После 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
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Как поставить интервал дат в MDX запрос. / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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