Функция NOT служит для взаимного преобразования логических значений. Если переданное в функцию выражение равно FALSE, она возвращает TRUE, и наоборот, если входное значение равно TRUE, функция возвращает FALSE. Иначе говоря, функция меняет FALSE на TRUE и наоборот.
Синтаксис
NOT (Выражение)
В скобках может использоваться любое значение или выражение, которое можно оценить как TRUE или FALSE.
Пример
Предположим, вы хотите рассчитать сумму продаж, без учета товаров определенного бренда (в нашем примере это будет “Lit”). Для этого можно воспользоваться следующей формулой:
Данная формула рассчитывает сумму продаж в таблице факты онлайн продаж, исключая продукты с брендом "Lit". Функция FILTER фильтрует таблицу продукты таким образом, чтобы остались только те строки, в которых не содержится значение Lit в поле brandname. Это достигается с помощью выражения NOT(CONTAINSSTRING('продукты'[brandname], "Lit")), которое возвращает TRUE, если значение Lit не найдено в столбце brandname таблицы продукты, и FALSE, если значение найдено.
NOT IN
Конструкция NOT IN используется для того, чтобы исключить определенные колонки из расчетов.
Пример
Представим, что вам необходимо вычислить сумму продаж для всех брендов, кроме одного (в нашем примере это будет "Contoso"). Для этой цели можно воспользоваться следующей формулой:
Объем продаж = CALCULATE (
SUM (
'факты онлайн продаж'[salesamount] ),
FILTER ( 'продукты', NOT('продукты'[brandname] IN { "Contoso" }))
)
Данная формула вычисляет сумму всех продаж, не связанных с брендом "Contoso". Это достигается с помощью функции NOT и оператора IN в выражении NOT('продукты'[brandname] IN { "Contoso" }), которое исключает строки в столбце brandname, в которых указано значение Contoso.