Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Возвращает набор, получающийся в результате фильтрации заданного набора на основе условия поиска.
Синтаксис
Filter(Set_Expression, Logical_Expression )
Аргументы
Set_Expression
Допустимое многомерное выражение, возвращающее набор.
Logical_Expression
Допустимое многомерное выражение иерархии, принимающее значение «true» или «false».
Замечания
Функция фильтра вычисляет указанное логическое выражение для каждого кортежа в указанном наборе. Функция возвращает набор, состоящий из каждого кортежа в указанном наборе, где логическое выражение оценивается как true. Если кортежи не оцениваются как true, возвращается пустой набор.
Функция фильтра работает так же, как и функция IIf . Функция IIf возвращает только один из двух вариантов на основе оценки логического выражения многомерных выражений, а функция фильтра возвращает набор кортежей, удовлетворяющих указанному условию поиска. В действительности функция фильтра выполняется IIf(Logical_Expression, Set_Expression.Current, NULL) для каждого кортежа в наборе и возвращает результирующий набор.
Примеры
В следующем примере показано использование функции Filter на оси строк запроса, чтобы получить только даты, когда мера «Продажи через Интернет — сумма продаж» больше 10 000 долларов США:
SELECT [Measures].[Internet Sales Amount] ON 0,
FILTER(
[Date].[Date].[Date].MEMBERS
, [Measures].[Internet Sales Amount]>10000)
ON 1
FROM
[Adventure Works]
Функция Filter может также использоваться в определениях вычисляемых элементов. В следующем примере возвращается сумма Measures.[Order Quantity] элемента, агрегированная за первые девять месяцев 2003 года, содержащихся в Date измерении, из куба Adventure Works . Функция PeriodsToDate определяет кортежи в наборе, над которым работает функция Агрегата . Функция фильтра ограничивает возвращаемые кортежи тем, кто содержит более низкие значения для меры "Объем продаж торгового посредника" за предыдущий период времени.
WITH MEMBER Measures.[Declining Reseller Sales] AS Count
(Filter
(Existing
(Reseller.Reseller.Reseller),
[Measures].[Reseller Sales Amount] <
([Measures].[Reseller Sales Amount],[Date].Calendar.PrevMember)
)
)
MEMBER [Geography].[State-Province].x AS Aggregate
( {[Geography].[State-Province].&[WA]&[US],
[Geography].[State-Province].&[OR]&[US] }
)
SELECT NON EMPTY HIERARCHIZE
(AddCalculatedMembers
({DrillDownLevel
({[Product].[All Products]})}
)
) DIMENSION PROPERTIES PARENT_UNIQUE_NAME ON COLUMNS
FROM [Adventure Works]
WHERE ([Geography].[State-Province].x,
[Date].[Calendar].[Calendar Quarter].&[2003]&[4],
[Measures].[Declining Reseller Sales])
См. также
Справочник по функции многомерных выражений (многомерные выражения)