2013-12-17 2 views
0

Я пытаюсь отфильтровать данные от Microsoft SQL в интеллектуальном кубе по сегодняшний день.
Формат даты из базы данных - YYYY-MM-DD HH:MM:SS.
Я хочу включить всю сегодняшнюю дату независимо от времени. Это фильтр у меня сейчасДанные фильтра Microstrategy к сегодняшней дате

(tblJournal.DateCreated > AddDays(CurrentDate(),-1)) 


AND 

(tblJournal.DateCreated < AddDays(CurrentDate(),1)) 

Проблема с этим фильтром она должна включать в себя время, потому что если, например, я запускаю этот фильтр на 17 в полдень она будет включать в себя все записи 16-го прошлого полудня до 18 до полудня. Как я могу изменить эту функцию, чтобы возвращать результаты только с сегодняшней даты?

ответ

0

В MicroStrategy Я предлагаю вам создать дополнительную форму «Дата» для атрибута, который вы сопоставили на tblJournal.DateCreated, и определить его как Date(tblJournal.DateCreated), где Date является функцией MicroStrategy, и формат, конечно, дата.

Затем вы можете определить фильтр для своего куба как атрибут DateCreated, Qualify в форме Date, равной Today (с использованием функциональности динамической даты, значка «Календарь» рядом с полем значений).

В противном случае на SQLServer мира вы можете сделать это:

DATEADD (дд, 0, DATEDIFF (дд, 0, tblJournal.DateCreated)) = DATEADD (дд, 0, DATEDIFF (дд, 0, CurrentDate()))

как предложено here

0

вы можете получить текущую дату без времени, как SELECT CONVERT(datetime, CONVERT(varchar, GETDATE(), 101))

И

Как я могу изменить эту функцию, чтобы возвращать результаты только с сегодняшней даты?

я думаю, что вы можете сделать это, как

(tblJournal.DateCreated > AddDays(CurrentDate(),0)) 

я не проверял код, надеюсь, что это поможет вам ... счастливым кодирования;)

Смежные вопросы