Расчет недельных продаж с помощью DAX в LuckyTemplates
В этом руководстве показано, как в конечном итоге можно рассчитать разницу между еженедельными результатами продаж с помощью DAX в LuckyTemplates.
В этом посте мы обсудим, как идентифицировать фильтр с помощью xmSQL и запроса механизма хранения в LuckyTemplates. Вы также узнаете, что делает VertiPaq при фильтрации по диапазону. Это важная тема, потому что кардинальность того, что применяется в фильтрах, является самой большой движущей силой производительности DAX.
Запрос xmSQL — это квази-продолжение языка, в котором есть предложения SELECT , FROM и WHERE . Предложение WHERE — это ваш фильтр, который вводится, когда вы используете функцию или . Фильтры существуют как в плане логического запроса, так и в плане запроса механизма хранения.
Оглавление
Переход контекста фильтра
В этом примере запроса есть функция с общим объемом продаж и функция над фактическими продажами. Фактические продажи умножаются на текущую цену и объем продаж. В этом примере вам нужно сосредоточиться только на продажах, превышающих 300.
Выполнение запроса даст вам результат таблицы с одной строкой, что не очень полезно.
Однако, если вы перейдете на вкладку Server Timings и просканируете, вы увидите оператор xmSQL, который дает вам информацию о том, что делает ваш запрос.
Предложение WITH с $Expr0 означает, что вычисляется математическое выражение. Затем выражение выбирается из таблицы данных о продажах или таблицы фактов о продажах, а затем фильтруется в предложении WHERE с заданными условиями.
В плане физического запроса вы можете увидеть оператор Filter_Vertipaq . Это означает, что запрос передается механизму хранения. Насколько это возможно, используйте механизм хранения в качестве фильтра, чтобы повысить производительность DAX.
Это еще один пример запроса, в котором вместо функции ВЫЧИСЛ ТАБЛИЦА используется СУММЛ . Если вы запустите запрос и посмотрите на оператор xmSQL, вы увидите тот же результат, сканирование и планы запросов.
Вы можете использовать либо функцию СУММ , либо функцию РАСЧЕТ ТАБЛИЦЫ для получения результатов. Но SUMX иногда может быть медленнее, чем CALCULATETABLE . Лучше всего использовать последний вариант для достижения более плавной работы DAX.
Фильтр по диапазону в LuckyTemplates
Это пример запроса, который фильтрует диапазон. Условие фильтра получает данные о продажах, если текущая цена больше или равна 300, но меньше 1000.
Если вы запустите запрос и посмотрите на оператор xmSQL, вы увидите диапазон в предложении WHERE .
Если вы посмотрите на физический план запроса, вы увидите 2 Filter_Vertipaq . Это связано с тем, что ваш фильтр имеет диапазон от 300 до 1000. Это также означает, что механизм хранения работает над запросом и вычислением.
Вот еще один запрос с несколькими значениями с использованием предложения OR , который обозначается « || ».
После выполнения запроса вы увидите изменения в предложении WHERE внутри оператора xmSQL. xmSQL преобразовал оператор OR в оператор IN .
Если вы используете IN в запросе, это даст тот же оператор xmSQL и результаты. Помните, что когда вы используете IN , это должна быть таблица, обозначенная фигурными скобками.
Но использование предложения OR или IN не имеет значения, потому что, когда механизм хранения читает его, он знает, что у него тот же самый оператор xmSQL. Вот почему он дает тот же результат в 939 012 долларов.
Введение в фильтр контекста в LuckyTemplates
Учебное пособие по DAX: контекст и механизм вычислений
Как использовать простые фильтры в LuckyTemplates
Заключение
В этом сообщении блога вы узнали, как настроить условие фильтра в вашем DAX в LuckyTemplates . Фильтры определяют, какие результаты могут быть получены из вашего запроса DAX в LuckyTemplates. Это важные объекты, которые должны быть установлены, чтобы вызывать переходы контекста. Если вы хотите получить определенные результаты из разных периодов времени или диапазонов, в запрос необходимо ввести контекст фильтра.
Ник
В этом руководстве показано, как в конечном итоге можно рассчитать разницу между еженедельными результатами продаж с помощью DAX в LuckyTemplates.
Что такое self в Python: примеры из реального мира
Вы узнаете, как сохранять и загружать объекты из файла .rds в R. В этом блоге также рассказывается, как импортировать объекты из R в LuckyTemplates.
В этом руководстве по языку программирования DAX вы узнаете, как использовать функцию GENERATE и как динамически изменять название меры.
В этом учебном пособии рассказывается, как использовать технику многопоточных динамических визуализаций для создания аналитических сведений из динамических визуализаций данных в ваших отчетах.
В этой статье я пройдусь по контексту фильтра. Контекст фильтра — одна из основных тем, с которой должен ознакомиться любой пользователь LuckyTemplates.
Я хочу показать, как онлайн-служба LuckyTemplates Apps может помочь в управлении различными отчетами и аналитическими данными, созданными из различных источников.
Узнайте, как рассчитать изменения вашей прибыли, используя такие методы, как разветвление показателей и объединение формул DAX в LuckyTemplates.
В этом руководстве будут обсуждаться идеи материализации кэшей данных и то, как они влияют на производительность DAX при предоставлении результатов.
Если вы все еще используете Excel до сих пор, то сейчас самое подходящее время, чтобы начать использовать LuckyTemplates для своих бизнес-отчетов.