Фильтр в LuckyTemplates: переход контекста запросов DAX

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

Запрос xmSQL — это квази-продолжение языка, в котором есть предложения SELECT , FROM и WHERE . Предложение WHERE — это ваш фильтр, который вводится, когда вы используете функцию или . Фильтры существуют как в плане логического запроса, так и в плане запроса механизма хранения.

Оглавление

Переход контекста фильтра

В этом примере запроса есть функция с общим объемом продаж и функция над фактическими продажами. Фактические продажи умножаются на текущую цену и объем продаж. В этом примере вам нужно сосредоточиться только на продажах, превышающих 300.

Фильтр в LuckyTemplates: переход контекста запросов DAX

Выполнение запроса даст вам результат таблицы с одной строкой, что не очень полезно.

Фильтр в LuckyTemplates: переход контекста запросов DAX

Однако, если вы перейдете на вкладку Server Timings и просканируете, вы увидите оператор xmSQL, который дает вам информацию о том, что делает ваш запрос.

Фильтр в LuckyTemplates: переход контекста запросов DAX

Предложение WITH с $Expr0 означает, что вычисляется математическое выражение. Затем выражение выбирается из таблицы данных о продажах или таблицы фактов о продажах, а затем фильтруется в предложении WHERE с заданными условиями.

В плане физического запроса вы можете увидеть оператор Filter_Vertipaq . Это означает, что запрос передается механизму хранения. Насколько это возможно, используйте механизм хранения в качестве фильтра, чтобы повысить производительность DAX.

Фильтр в LuckyTemplates: переход контекста запросов DAX

Это еще один пример запроса, в котором вместо функции ВЫЧИСЛ ТАБЛИЦА используется СУММЛ . Если вы запустите запрос и посмотрите на оператор xmSQL, вы увидите тот же результат, сканирование и планы запросов.

Фильтр в LuckyTemplates: переход контекста запросов DAX

Вы можете использовать либо функцию СУММ , либо функцию РАСЧЕТ ТАБЛИЦЫ для получения результатов. Но SUMX иногда может быть медленнее, чем CALCULATETABLE . Лучше всего использовать последний вариант для достижения более плавной работы DAX.

Фильтр по диапазону в LuckyTemplates

Это пример запроса, который фильтрует диапазон. Условие фильтра получает данные о продажах, если текущая цена больше или равна 300, но меньше 1000.

Фильтр в LuckyTemplates: переход контекста запросов DAX

Если вы запустите запрос и посмотрите на оператор xmSQL, вы увидите диапазон в предложении WHERE .

Фильтр в LuckyTemplates: переход контекста запросов DAX

Если вы посмотрите на физический план запроса, вы увидите 2 Filter_Vertipaq . Это связано с тем, что ваш фильтр имеет диапазон от 300 до 1000. Это также означает, что механизм хранения работает над запросом и вычислением.

Фильтр в LuckyTemplates: переход контекста запросов DAX

Вот еще один запрос с несколькими значениями с использованием предложения OR , который обозначается « || ».  

Фильтр в LuckyTemplates: переход контекста запросов DAX

После выполнения запроса вы увидите изменения в предложении WHERE внутри оператора xmSQL. xmSQL преобразовал оператор OR в оператор IN .

Фильтр в LuckyTemplates: переход контекста запросов DAX

Если вы используете IN в запросе, это даст тот же оператор xmSQL и результаты. Помните, что когда вы используете IN , это должна быть таблица, обозначенная фигурными скобками.

Фильтр в LuckyTemplates: переход контекста запросов DAX

Но использование предложения OR или IN не имеет значения, потому что, когда механизм хранения читает его, он знает, что у него тот же самый оператор xmSQL. Вот почему он дает тот же результат в 939 012 долларов.

Фильтр в LuckyTemplates: переход контекста запросов DAX


Введение в фильтр контекста в LuckyTemplates
Учебное пособие по DAX: контекст и механизм вычислений
Как использовать простые фильтры в LuckyTemplates

Заключение

В этом сообщении блога вы узнали, как настроить условие фильтра в вашем DAX в LuckyTemplates . Фильтры определяют, какие результаты могут быть получены из вашего запроса DAX в LuckyTemplates. Это важные объекты, которые должны быть установлены, чтобы вызывать переходы контекста. Если вы хотите получить определенные результаты из разных периодов времени или диапазонов, в запрос необходимо ввести контекст фильтра.

Ник

Leave a Comment

Расчет недельных продаж с помощью DAX в LuckyTemplates

Расчет недельных продаж с помощью DAX в LuckyTemplates

В этом руководстве показано, как в конечном итоге можно рассчитать разницу между еженедельными результатами продаж с помощью DAX в LuckyTemplates.

Что такое self в Python: примеры из реального мира

Что такое self в Python: примеры из реального мира

Что такое self в Python: примеры из реального мира

Как сохранить и загрузить файл RDS в R

Как сохранить и загрузить файл RDS в R

Вы узнаете, как сохранять и загружать объекты из файла .rds в R. В этом блоге также рассказывается, как импортировать объекты из R в LuckyTemplates.

Новый взгляд на первые N рабочих дней — решение для языка кодирования DAX

Новый взгляд на первые N рабочих дней — решение для языка кодирования DAX

В этом руководстве по языку программирования DAX вы узнаете, как использовать функцию GENERATE и как динамически изменять название меры.

Продемонстрируйте идеи с помощью метода многопоточных динамических визуализаций в LuckyTemplates

Продемонстрируйте идеи с помощью метода многопоточных динамических визуализаций в LuckyTemplates

В этом учебном пособии рассказывается, как использовать технику многопоточных динамических визуализаций для создания аналитических сведений из динамических визуализаций данных в ваших отчетах.

Введение в фильтрацию контекста в LuckyTemplates

Введение в фильтрацию контекста в LuckyTemplates

В этой статье я пройдусь по контексту фильтра. Контекст фильтра — одна из основных тем, с которой должен ознакомиться любой пользователь LuckyTemplates.

Лучшие советы по использованию приложений в онлайн-службе LuckyTemplates

Лучшие советы по использованию приложений в онлайн-службе LuckyTemplates

Я хочу показать, как онлайн-служба LuckyTemplates Apps может помочь в управлении различными отчетами и аналитическими данными, созданными из различных источников.

Анализ изменений маржи прибыли с течением времени — аналитика с LuckyTemplates и DAX

Анализ изменений маржи прибыли с течением времени — аналитика с LuckyTemplates и DAX

Узнайте, как рассчитать изменения вашей прибыли, используя такие методы, как разветвление показателей и объединение формул DAX в LuckyTemplates.

Идеи материализации кэшей данных в DAX Studio

Идеи материализации кэшей данных в DAX Studio

В этом руководстве будут обсуждаться идеи материализации кэшей данных и то, как они влияют на производительность DAX при предоставлении результатов.

Бизнес-отчетность с использованием LuckyTemplates

Бизнес-отчетность с использованием LuckyTemplates

Если вы все еще используете Excel до сих пор, то сейчас самое подходящее время, чтобы начать использовать LuckyTemplates для своих бизнес-отчетов.