Як максимізувати використання функції INTERSECT – Advanced DAX

Функція INTERSECT у LuckyTemplates є вдосконаленою табличною функцією, і вам потрібно її краще зрозуміти, щоб максимально використовувати цей вдосконалений DAX. Ви можете переглянути повне відео цього підручника внизу цього блогу.

Але щоб зрозуміти, як це працює, вам потрібно набагато краще розуміти віртуальні таблиці. Віртуальні таблиці є ключовим поняттям під час використання заходів DAX у LuckyTemplates.

Особливо функція INTERSECT дозволяє вам порівнювати одну віртуальну таблицю з іншою в межах вимірювання. Тоді ви нарешті зможете повернути таблицю результатів, які відображаються в обох версіях цих двох віртуальних таблиць.

Коли ви зрозумієте, як можна використовувати цю функцію, ви незабаром побачите, що існує дивовижна можливість, коли мова заходить про легке виконання дуже розширеної логіки.

Зміст

Демонстрація унікальної думки за допомогою функції INTERSECT

У прикладі, який я розглядаю, я продемонструю справді унікальну ідею, яку ви можете відкрити за допомогоюфункція. Цю особливу інформацію можна використовувати багатьма різними способами . Це найбільш корисно, коли ви працюєте з клієнтськими даними, і ваша мета — краще зрозуміти своїх клієнтів.

Найкращий спосіб навчитися цій функції – це практична сцена. Отже, я збираюся пропрацювати сценарій і розробити його на основі наших клієнтів за поточний місяць. Ці клієнти також повинні мати історію покупок за останні два місяці. І ми збираємося визначити, хто з наших поточних клієнтів мав попередні транзакції замовлення 2 місяці тому.

Подивіться на цей звіт LuckyTemplates, який я створив, щоб продемонструвати функцію. По-перше, я встановив кілька фільтрів ліворуч, де ми можемо вибрати будь-який місяць.

Як максимізувати використання функції INTERSECT – Advanced DAX

Потім у мене є стовпці для всіх клієнтів. Стовпці «Загальний обсяг продажів » і «Продажі LM» показують історію покупців за поточний місяць, а також за останній місяць. Формула загального обсягу продажів дуже проста. Це просто сума всіх продажів від певного клієнта.

Як максимізувати використання функції INTERSECT – Advanced DAX

Формула Sales LM — це проста формула загального обсягу продажів, яка розгалужується на розрахунок часу, використовуючи DATEADD для переходу до попереднього місяця.

Як максимізувати використання функції INTERSECT – Advanced DAX

Як максимізувати використання функції INTERSECT – Advanced DAX

Важливо розуміти початковий контекст формули, оскільки ми вмикаємо обчислення за останній місяць за допомогою згаданих формул. Таким чином, нам потрібно отримати правильний початковий контекст, щоб ми могли застосувати формули DAX.

Як ми динамічно опрацьовуємо клієнтів, які купували два місяці поспіль? Це те, що ви можете побачити в стовпці «Клієнти 2 млн у рядку» .

Тепер я також хочу знати загальний обсяг продажів від цих клієнтів, тому я додав стовпець Продажі від клієнтів 2 млн у рядку .

Як максимізувати використання функції INTERSECT – Advanced DAX

Ідентифікація постійних клієнтів за допомогою функції INTERSECT

Давайте розглянемо, наскільки корисним є INTERSECT , коли справа доходить до пошуку постійних клієнтів. Ось формула для клієнтів 2 млн поспіль .

Як максимізувати використання функції INTERSECT – Advanced DAX

У цій формулі я розмістив дві віртуальні таблиці, які є зовнішніми змінними ( VAR ) всередині функції INTERSECT . По суті, він оцінює список елементів або рядків, які присутні в першій таблиці, але не в другій.

Як максимізувати використання функції INTERSECT – Advanced DAX

Початкова таблиця тут — CustomerTM , що означає тих клієнтів, які зробили покупку цього місяця. Потім формула перевіряє, чи ці клієнти також перераховані в таблиці CustomerLM .

Якщо клієнт існує в обох віртуальних таблицях, його буде збережено. Таким чином, ця формула дає нам змогу отримати всіх клієнтів, які зробили покупку цього місяця та попереднього місяця.

Далі я використавфункція для підрахунку клієнтів, що залишилися.

Як максимізувати використання функції INTERSECT – Advanced DAX

Тепер поговоримо про створення віртуальних столів для тих клієнтів, які купували 2 місяці поспіль.

Як максимізувати використання функції INTERSECT – Advanced DAX

Якщо ви помітили, я помістив їх у функцію ( змінні). Я настійно рекомендую ці функції, оскільки вони є фантастичним доповненням до написання складніших формул. 

У цьому конкретному наборі для VAR CustomerTM я створюю віртуальну таблицю ідентифікаторів клієнтів. Потім для VAR CustomerLM я знову створю віртуальний стіл для наших клієнтів минулого місяця. Але цього разу я додавфункція, щоб він міг повернутися до набору клієнтів попереднього місяця замість поточного контексту.

Ось що цікавого в цьому розрахунку, який ми маємо зараз.

Як максимізувати використання функції INTERSECT – Advanced DAX

Формула перевіряє лише кожен окремий рядок клієнтів, оскільки клієнти фільтруються. Якщо для певного рядка (клієнта) немає продажів за попередній місяць, оцінювати нема чого. Таким чином, стовпець "Клієнти 2 м у рядку" порожній. Але якщо клієнт має попередній запис, він вважається 1 .

Наприклад, якщо ми подивимося на дані про Адама Томпсона, він поверне 1 у стовпці «Клієнти 2 млн у рядку» . Це означає, що цей клієнт має запис як за останній місяць, так і за два попередні місяці.

Повторне використання формули для іншого контексту

Можливо, ви не відразу усвідомлюєте важливість використання INTERSECT , але є вагома причина, чому вам потрібно використовувати цю формулу. Це головним чином тому, що ви можете повторно використовувати цей обчислення в різноманітних контекстах. Подивіться на цей приклад нижче.

Як максимізувати використання функції INTERSECT – Advanced DAX

Щоб отримати зразки даних вище, я використав ту саму формулу. Але цього разу я починаю з іншого початкового контексту. Замість того, щоб оцінювати один рядок, він оцінює багато контекстів, як-от код штату. Потім створюється список клієнтів, які зробили покупку в червні 2016 року, а також у травні 2016 року. Потім я порівню його з тими клієнтами, які зробили покупку один раз у певному штаті в поточному місяці.

У стовпці «Клієнти 2 млн у рядку» можна побачити точну кількість клієнтів, які відповідають цим критеріям.

Під цією таблицею є інша візуалізація, яка демонструє ті самі дані для клієнтів 2M поспіль за кодом штату .

Ви фактично можете знову змінити контекст у своїй моделі залежно від ваших вимог. Якщо ваш фільтр працює правильно, ви можете повторно застосувати цю формулу, щоб додати її до інших ситуацій.

Ось чому я сказав, що INTERSECT дуже потужний. Замість того, щоб просто писати оператори IF , ви можете використовувати ці функції INTERSECT у своїй формулі.

Розрахунок загального обсягу продажів від постійних клієнтів

Крім того, ми працюємо на загальній кількості продажів від наших постійних клієнтів .

Результати в стовпці Продажі від клієнтів 2M In A Row — це сума покупок клієнта за поточний і попередній місяць. Зверніть увагу, що ми можемо отримати такий результат, лише якщо клієнт купував два місяці поспіль. 

Це формула для загальних продажів постійних клієнтів.

Як максимізувати використання функції INTERSECT – Advanced DAX

Тут можна побачити, що шаблон майже такий самий. Єдина відмінність тут полягає в тому, що замість COUNTROWS я використав функцію CALCULATE , щоб змінити контекст обчислення. 

Це тому, що тут нам потрібна загальна сума продажів від клієнтів. Але, як бачите, я все ще використовую функцію INTERSECT . Це дуже корисно, коли йдеться про аналіз Парето. Але ви також можете застосувати цю функцію кількома різними способами.

Включення INTERSECT для клієнтів за останні три місяці

Ви все ще можете піти далі, ніж раніше. Ви можете фактично обчислити клієнтів, які купували протягом трьох місяців поспіль, використовуючи формулу нижче.

Як максимізувати використання функції INTERSECT – Advanced DAX

Все, що я додав, це інший розрахунок, який повертається на два місяці назад замість одного.

Як максимізувати використання функції INTERSECT – Advanced DAX

Після цього я додав функцію INTERSECT в іншу функцію INTERSECT . Таким чином, він не лише оцінюватиме клієнтів за поточний місяць та історію покупок за останній місяць. Він також перевірить, чи конкретний клієнт також здійснював покупку 2 місяці тому.

Щоб додати ці дані до таблиці, просто перетягніть формулу «Клієнти 3M In A Row» у таблицю.

Як максимізувати використання функції INTERSECT – Advanced DAX

Унизу ви побачите, що загалом 45 клієнтів здійснювали покупки протягом трьох місяців поспіль. Це досить інтенсивне розуміння, яке дуже корисне.




Висновок

Як згадувалося раніше, INTERSECT є табличною функцією, і її можна використовувати різними способами.

Основна увага в цьому посібнику полягає в тому, щоб ви побачили, як ви можете використовувати його в такті та різними способами в межах такту. Саме тому, на мою думку, це можна дуже ефективно використати для проведення винятково переконливого аналізу.

Успіхів у ознайомленні з цим розширеним підручником LuckyTemplates.


Змініть формати дати за допомогою редактора Power Query

Змініть формати дати за допомогою редактора Power Query

У цьому посібнику ви дізнаєтеся, як перетворити текст у формат дати за допомогою редактора Power Query в LuckyTemplates.

Power Query: об’єднайте файли з кількох папок

Power Query: об’єднайте файли з кількох папок

Дізнайтеся, як об’єднати файли з кількох папок у мережі, робочому столі, OneDrive або SharePoint за допомогою Power Query.

Обчисліть місячне ковзне середнє з початку року (з початку року) у LuckyTemplates

Обчисліть місячне ковзне середнє з початку року (з початку року) у LuckyTemplates

Цей підручник пояснює, як обчислити місячне ковзне середнє на базі даних з початку року за допомогою функцій AVERAGEX, TOTALYTD та FILTER у LuckyTemplates.

Створення таблиці дат у LuckyTemplates

Створення таблиці дат у LuckyTemplates

Дізнайтеся, чому важлива спеціальна таблиця дат у LuckyTemplates, і вивчіть найшвидший і найефективніший спосіб це зробити.

Мобільні звіти LuckyTemplates. Поради та методи

Мобільні звіти LuckyTemplates. Поради та методи

У цьому короткому посібнику розповідається про функцію мобільних звітів LuckyTemplates. Я збираюся показати вам, як ви можете ефективно створювати звіти для мобільних пристроїв.

Звіти про професійну аналітику послуг у LuckyTemplates

Звіти про професійну аналітику послуг у LuckyTemplates

У цій презентації LuckyTemplates ми розглянемо звіти, що демонструють професійну аналітику послуг від фірми, яка має кілька контрактів і залучених клієнтів.

Оновлення Microsoft Power Platform | Microsoft Ignite 2021

Оновлення Microsoft Power Platform | Microsoft Ignite 2021

Ознайомтеся з основними оновленнями для Power Apps і Power Automate, а також їх перевагами та наслідками для Microsoft Power Platform.

Загальні функції SQL: огляд

Загальні функції SQL: огляд

Відкрийте для себе деякі поширені функції SQL, які ми можемо використовувати, наприклад String, Date і деякі розширені функції для обробки та маніпулювання даними.

Створення шаблону LuckyTemplates: керівництво та поради

Створення шаблону LuckyTemplates: керівництво та поради

У цьому підручнику ви дізнаєтеся, як створити свій ідеальний шаблон LuckyTemplates, налаштований відповідно до ваших потреб і вподобань.

Параметри полів і малі кратні в LuckyTemplates

Параметри полів і малі кратні в LuckyTemplates

У цьому блозі ми продемонструємо, як шарувати параметри поля з малими кратними, щоб створити неймовірно корисну інформацію та візуальні ефекти.