Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Drill по времени (MSTR)
|
|||
|---|---|---|---|
|
#18+
ХАй кто нибудь может раскрыть тему почему так слабо с преоброзованием времени в MSTR? или я что то не так делаю? Вообщем решил поэкспериментировать убрал справочник по времени и стал использовать стандартные функции типа Year() из поля datetime получилось вот что (группровка по году) select DATEPART(YEAR, a11.CA_DATA) CustCol, count(distinct a11.CA_MSISDN) WJXBFS1 from dbo.CA a11 group by DATEPART(YEAR, a11.CA_DATA) потом из отчета выбираю год(2005) и хочу перейти на месяц. select DATEPART(MONTH, a11.CA_DATA) CustCol_1, count(distinct a11.CA_MSISDN) WJXBFS1 from dbo.CA a11 where DATEPART(YEAR, a11.CA_DATA) in (CONVERT(datetime, '1899-12-30 00:00:00', 120)) group by DATEPART(MONTH, a11.CA_DATA) Почему же 1899?? и почему CONVERT? хотя просто нужно было поставить ('2005') :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2005, 09:47 |
|
||
|
Drill по времени (MSTR)
|
|||
|---|---|---|---|
|
#18+
еще интересно следующее когда сохраняю производный отчет с группировкой по месяцам вижу в Editor что фильтр такой Год in list (2005) однако он не действует если этот отчет запустить меняю на exactly и тут то все начинает работать... вот гад, а... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2005, 10:04 |
|
||
|
Drill по времени (MSTR)
|
|||
|---|---|---|---|
|
#18+
Мой Вам совет - лучше пользуйтесь нормальным измерением ВРЕМЯ и не парьтесь с функциями. Мало того, что индексы не будут работать, там где они работают со столбцами, ещё и в возможностях проиграете по сравнением с использованием таблиц. Как, например, Вы из даты поймёте, является ли данный день праздничным или выходным, если не использовать таблицу измерения? Я так понимаю, что Вы хотите избежать лишнего джойна? Тут надо заметить, что отсутствие индекса для проведения операции GROUP BY может наоборот замедлить выполнение запроса, даже если нет джойна. Нормальная СУБД в приведённом Вами запросе сначала выполнит агрегацию, а потом будет выполнять джойн. Удивляюсь, как на ровном месте можно найти для себя столько проблем... Удачи в борьбе с функциями. С уважением, Константин Лисянский http://lissianski.narod.ru ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2005, 10:28 |
|
||
|
Drill по времени (MSTR)
|
|||
|---|---|---|---|
|
#18+
:) да ууж. спасибо кстати DimModeler поддерживает ли MS SQL? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2005, 10:34 |
|
||
|
Drill по времени (MSTR)
|
|||
|---|---|---|---|
|
#18+
:) да ууж. спасибо Не за что :) кстати DimModeler поддерживает ли MS SQL? Да, поддерживает. Существует специальный модуль для генерации DDL - называется DBMS Driver. Вот его функциональность: Feature Description CREATE TABLE statements generation DBMS Driver automatically generates CREATE TABLE statements DROP TABLE statements generation DBMS Driver automatically generates DROP TABLE statements to give users an opportunity to create tables more than once PRIMARY KEY constraint generation DBMS Driver automatically generates primary keys for the tables using DimensionModeler metadata FOREIGN KEY constraint generation DBMS Driver automatically generates foreign keys for the tables using DimensionModeler metadata NULL/NOT NULL constraint generation DBMS Driver automatically generates NULL/NOT NULL constraints for the tables using DimensionModeler metadata and our knowledge about the uniquness of the corresponding column values UNIQUE constraint generation DBMS Driver automatically generates NULL/NOT NULL clauses for the tables using DimensionModeler metadata CHECK constraint generation CHECK constraint expressions are generated automatically depending on the TIME dimension attribute that a column represents CREATE INDEX generation DBMS Driver automatically generates CREATE INDEX statements for the tables using DimensionModeler metadata and our knowledge about how the columns must beindexed to achieve better performance DROP INDEX generation DBMS Driver automatically generates DROP INDEX statements for the tables using DimensionModeler metadata File options Users can choose whether to generate DDL for all tables into one file or to create one DDL file per table Command file generation Automatic generation of command files that run the generated DDL using DBMS native utilities for batch SQL execution (like isql in the case of Microsoft SQL Server) Seamless integration with DimensionModeler Base Module DBMS Drivers are built into DimensionModeler's GUI and use the same project files to store their own metadata В данный момент разрабатывается функциональность, связанная с генерацией скриптов сбора статистики по таблицам измерения ВРЕМЯ для пущей скорострельности. Скоро будет готово. Источник здесь . Рекомендую посмотреть также описание модуля для Microstrategy коль скоро Вы им пользуетесь. Пример кода для создания нескольких таблиц в MS SQL Server, который он может сгенерировать для приведён здесь . Дальше, есть модуль (Data Loader), который генерирует скрипты bcp для закачки сгенерированных данных в MS SQL. В общем, MS SQL поддерживается хорошо. С уважением, Константин Лисянский http://lissianski.narod.ru ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2005, 11:57 |
|
||
|
|

start [/forum/topic.php?fid=49&fpage=366&tid=1871648]: |
0ms |
get settings: |
9ms |
get forum list: |
18ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
57ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
33ms |
get tp. blocked users: |
2ms |
| others: | 228ms |
| total: | 368ms |

| 0 / 0 |
