Поделиться через


Фильтрация таблицы фактов для нескольких секций

Когда одна и та же таблица фактов используется для более чем одной секции в кубе, важно, чтобы одни и те же строки не использовались более чем для одной секции. Возможно, что строка, которая используется более чем в одной секции, будет включена несколько раз при обработке или создании запросов к кубу. Это может привести к тому, что запросы будут возвращать некорректные данные.

Можно использовать фильтры в секциях, чтобы гарантировать, что данные не дублируются между секциями. Фильтр секции задает, какие данные в таблице фактов используются в секции. Важно, чтобы фильтры для всех секций в кубе извлекали взаимоисключающие наборы данных из таблицы фактов. Например, следующие фильтры являются взаимоисключающими в пределах каждого набора:

Набор 1:

"Год_продаж" = 2004

"Год_продаж" = 2005

Набор 2:

"Континент" = 'Северная_Америка'

"Континент" = 'Европа'

"Континент" = 'Южная_Америка'

Набор 3:

"Страна" = 'США'

"Страна" = 'Мексика'

("Страна" <> 'США' AND "Страна" <> 'Мексика')

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

При создании взаимоисключающих запросов для секций убедитесь, что комбинированные данные секций включают все данные, которые необходимо включить в куб. Обычно необходимо удалить секцию по умолчанию, которая была основана на самой таблице, иначе секции, основанные на запросах, будут перекрываться с запросом, основанным на полной таблице.

ms175325.note(ru-ru,SQL.90).gifПримечание.
Вместо фильтрации данных в секции можно использовать тот же запрос для создания именованного запроса в представлении источника данных, а потом настроить секцию на основе этого именованного запроса.

См. также

Основные понятия

Создание и управление локальными секциями

Справка и поддержка

Получение помощи по SQL Server 2005