Расчет недельных продаж с помощью DAX в LuckyTemplates
В этом руководстве показано, как в конечном итоге можно рассчитать разницу между еженедельными результатами продаж с помощью DAX в LuckyTemplates.
В этом руководстве вы узнаете о ключевом слове TABLE в DAX Studio. Ключевое слово TABLE позволяет создавать таблицы внутри вашего запроса DAX.
Это продолжение серии руководств по различным ключевым словам, которые можно использовать при создании запросов DAX. Прежде чем погрузиться в эту тему, обязательно прочитайте ключевые слова DEFINE и MEASURE .
Оглавление
Начало работы с таблицами в DAX Studio
Чтобы использовать это ключевое слово, сначала напишите DEFINE, а затем TABLE. Затем укажите имя таблицы, которую вы хотите создать. В этом примере имя таблицы — ModelStats .
Для этого запроса используется специальная функция: функция COLUMNSTATISTICS() . Эту функцию можно использовать для быстрого создания метаданных для каждой таблицы в вашей модели данных. Эта функция недоступна в DAX в LuckyTemplates; это совершенно уникально для DAX Studio.
Чтобы просмотреть таблицу, напишите EVALUATE ModelStats .
После выполнения этого запроса вы получите таблицу со всеми таблицами и статистикой каждой таблицы в вашей модели данных.
Вы также можете добавить еще один столбец, используя функцию . В этом случае имя столбца — «Случайное», и в нем отображаются случайные числа, сгенерированные DAX Studio с использованием функции .
Создание таблицы для разных продуктов в DAX Studio
Давайте рассмотрим более реалистичный пример. Это тот же пример, который использовался в учебнике по ключевым словам MEASURE. Он ориентирован на гипотетический бизнес с «модными» и «скучными» продуктами.
В этом случае цель состоит в том, чтобы разделить таблицу «Продукты» на 2 категории. Первая таблица предназначена для TrendyProducts , а вторая — для BoringProducts .
Для таблицы TrendyProducts сначала ОПРЕДЕЛИТЕ, что такое TrendyColors . В данном случае это красный, синий и розовый. Затем вам нужно ввести этот фильтр в контекст фильтра. Для этого вам нужно использовать функцию .
Обратите внимание, что используется функция Это делается для того, чтобы различать переменные и имя таблицы.
Затем создайте переменную для Result . Для этой переменной создайте новый столбец с помощью функции ADDCOLUMNS и назовите его «Описание». В столбце «Описание» будет указано, какие строки относятся к трендовым продуктам. Затем ВЕРНИТЕ результат.
Чтобы посмотреть, как выглядит новая таблица, напишите EVALUATE TrendyProducts . Затем запустите запрос DAX, нажав «Выполнить» или нажав клавишу F5.
Вы можете видеть, что таблица возвращает 383 строки, помеченные как модные продукты.
Теперь та же логика применима и к таблице BoringProducts . Вы можете скопировать код и вставить его после RETURN.
Поэтому вместо TABLE TrendyProducts замените его на TABLE BoringProducts . В качестве аргумента CALCULATETABLE напишите функцию . Затем измените имя столбца на «Скучно».
Затем выполните EVALUATE таблицу BoringProducts, чтобы просмотреть ее.
Вы можете видеть, что скучные продукты возвращают 2134 строки. Вы также можете увидеть в столбце «Описание», что он содержит только «Скучно».
Объединение двух или более таблиц вместе
Следующее, что вы можете сделать, это соединить эти две таблицы вместе с помощью ключевого слова .
Теперь можно подумать, что вы можете просто написать новое ключевое слово TABLE с функцией UNION, чтобы объединить две таблицы вместе.
Однако в данном случае это невозможно, так как код BoringProducts содержит таблицу TrendyProducts. Если вы попытаетесь выполнить этот запрос, вы получите сообщение об ошибке.
Вы не можете использовать таблицу запросов в другой таблице запросов в DAX Studio.
Вместо этого вы должны поместить синтаксис UNION после EVALUATE .
Если вы запустите это, вы получите таблицу, содержащую как модные, так и скучные продукты. Вы можете видеть, что эта таблица содержит 2517 строк.
Создание таблицы дат в DAX Studio
В следующем примере показано, как создать таблицу Dates в вашей модели данных. Откройте новый пустой запрос. Прежде всего, давайте сначала попробуем ключевое слово TABLE с функциями и . Этот запрос просто оценивает даты между 1 января 2007 г. и 31 декабря 2007 г.
Вы можете видеть, что результаты показывают все даты между тем, что было указано в запросе. Чтобы создать дополнительные столбцы в таблице «Даты», используйте функцию поверх текущего кода CALENDAR. Затем используйте функцию , чтобы разделить разные данные в таблице «Даты».
Столбец [Дата], используемый в этом запросе, взят из функции КАЛЕНДАРЬ. Заметьте также, что используется переменная VAR CurrentDate . Эта переменная хранит значение, доступ к которому осуществляется из контекста строки. Затем это значение возвращается внутри функции строки.
Это сделано для упрощения кода. Таким образом, вместо ссылки на столбец [Дата] вы можете использовать объявленную вами переменную. Вы можете добавить дополнительные столбцы в таблицу «Даты» в соответствии с вашими потребностями.
Использование TABLE с SUMMARIZECOLUMNS
Еще одна вещь, которую вы можете сделать с созданной вами таблицей Dates, — это добавить функцию .
После EVALUATE используйте SUMMARIZECOLUMNS , а затем чтобы подсчитать количество строк, принадлежащих вашему номеру календарного года.
После того, как вы запустите это, вы увидите, что таблица сообщает о 365 строках, относящихся к 2007 году. Вы можете попробовать и поэкспериментировать с вашим текущим запросом.
Например, вы можете изменить верхнюю границу конечной даты с 2007 на 2009 год. Если вы запустите это, вы увидите, что в таблице теперь отображаются строки для 2007, 2008 и 2009 годов.
Если, например, вы хотите добавить еще один столбец, который показывает первую дату таблицы, используйте функцию .
Точно так же используйте функцию , чтобы определить последнюю дату каждой строки.
Чтобы получить общее количество строк в таблицах Dates, используйте функцию с COUNTROWS . Затем используйте , чтобы удалить контекст фильтра из таблицы Dates, которую вы создали с помощью SUMMARIZECOLUMNS.
После выполнения запроса вы увидите, что появился новый столбец, показывающий общее количество строк, доступных в таблице «Даты».
Заключение
Наряду с DEFINE и MEASURE ключевое слово TABLE имеет жизненно важное значение при создании запросов в DAX Studio. Это помогает упростить процесс создания таблиц.
В этом руководстве показаны основные примеры использования ключевого слова TABLE. Важно изучить основы, так как это помогает понять более сложные запросы, которые чаще встречаются при работе с реальными приложениями.
В этом руководстве показано, как в конечном итоге можно рассчитать разницу между еженедельными результатами продаж с помощью DAX в LuckyTemplates.
Что такое self в Python: примеры из реального мира
Вы узнаете, как сохранять и загружать объекты из файла .rds в R. В этом блоге также рассказывается, как импортировать объекты из R в LuckyTemplates.
В этом руководстве по языку программирования DAX вы узнаете, как использовать функцию GENERATE и как динамически изменять название меры.
В этом учебном пособии рассказывается, как использовать технику многопоточных динамических визуализаций для создания аналитических сведений из динамических визуализаций данных в ваших отчетах.
В этой статье я пройдусь по контексту фильтра. Контекст фильтра — одна из основных тем, с которой должен ознакомиться любой пользователь LuckyTemplates.
Я хочу показать, как онлайн-служба LuckyTemplates Apps может помочь в управлении различными отчетами и аналитическими данными, созданными из различных источников.
Узнайте, как рассчитать изменения вашей прибыли, используя такие методы, как разветвление показателей и объединение формул DAX в LuckyTemplates.
В этом руководстве будут обсуждаться идеи материализации кэшей данных и то, как они влияют на производительность DAX при предоставлении результатов.
Если вы все еще используете Excel до сих пор, то сейчас самое подходящее время, чтобы начать использовать LuckyTemplates для своих бизнес-отчетов.