FILTER, функция
Возвращает таблицу, представляющую подмножество другой таблицы или выражения.
Синтаксис
FILTER(<table>,<filter>)
Параметры
Элемент |
Определение |
---|---|
table |
Таблица для фильтрации. Аргумент table также может быть выражением, результатом которого является таблица. |
filter |
Логическое выражение, вычисляемое для каждой строки таблицы. Например, [Amount] > 0 или [Region] = "France". |
Возвращаемое значение
Таблица, содержащая только отфильтрованные строки.
Замечания
С помощью функции FILTER можно сократить число строк в рабочей таблице и использовать при вычислениях только определенные данные. Функция FILTER не используется независимо, а внедряется в другие функции, аргументом которых должна быть таблица.
Пример
В следующем примере создается отчет по продажам через Интернет за пределами США с помощью меры, которая используется для фильтрации продаж в США и последующего создания среза по календарному году и категориям продукта. Чтобы создать эту меру, необходимо применить фильтр к таблице продаж через Интернет в долларах США, а затем отфильтрованную таблицу следует использовать в функции SUMX.
В этом примере выражение FILTER('InternetSales_USD', RELATED('SalesTerritory'[SalesTerritoryCountry])<>"United States") возвращает таблицу, которая является подмножеством данных о продажах через Интернет за вычетом всех строк, которые относятся к продажам на территории США. Функция RELATED связывает ключи территории продаж через Интернет с SalesTerritoryCountry в таблице SalesTerritory.
Следующая таблица служит доказательством концепции для меры NON USA Internet Sales, формула которой представлена ниже, в разделе с кодом. В таблице сравниваются все продажи через Интернет за пределами территории США, что демонстрирует работоспособность критерия фильтра путем исключения продаж в США при выполнении вычислений.
Чтобы заново создать таблицу, добавьте поле «SalesTerritoryCountry» к области Row Labels сводной таблицы.
Таблица 1.Сравнение общего объема продаж в СШАидругих регионах
Row Labels |
Internet Sales |
Non USA Internet Sales |
---|---|---|
Australia |
$4,999,021.84 |
$4,999,021.84 |
Canada |
$1,343,109.10 |
$1,343,109.10 |
France |
$2,490,944.57 |
$2,490,944.57 |
Germany |
$2,775,195.60 |
$2,775,195.60 |
United Kingdom |
$5,057,076.55 |
$5,057,076.55 |
United States |
$9,389,479.79 |
|
Общий итог |
$26,054,827.45 |
$16,665,347.67 |
В окончательной таблице отчета показаны результаты создания сводной таблицы с помощью меры NON USA Internet Sales. Добавьте поле CalendarYear к области Row Labels сводной таблицы, а затем добавьте поле ProductCategoryName к области Column Labels.
Таблица 2.Сравнение продаж в регионах за пределами СШАпо категориям продуктов
Non USA Internet Sales |
Column Labels |
|
|
|
---|---|---|---|---|
Метки строк |
Accessories |
Bikes |
Clothing |
Общий итог |
2005 |
|
$1,526,481.95 |
|
$1,526,481.95 |
2006 |
|
$3,554,744.04 |
|
$3,554,744.04 |
2007 |
$156,480.18 |
$5,640,106.05 |
$70,142.77 |
$5,866,729.00 |
2008 |
$228,159.45 |
$5,386,558.19 |
$102,675.04 |
$5,717,392.68 |
Общий итог |
$384,639.63 |
$16,107,890.23 |
$172,817.81 |
$16,665,347.67 |
SUMX(FILTER('InternetSales_USD', RELATED('SalesTerritory'[SalesTerritoryCountry])<>"United States")
,'InternetSales_USD'[SalesAmount_USD])