Оператор COALESCE: приложение Power Query

Оператор COALESCE: приложение Power Query

В этом руководстве показано, как использовать оператор COALESCE в языке Power Query/M, путем изучения двух практических задач. Вы можете посмотреть полное видео этого урока в нижней части этого блога.

Оператор COALESCE представлен двойным вопросительным знаком ( ?? ). Этот оператор работает аналогично оператору или в Python или функции по умолчанию в Он возвращает первый операнд, если он существует и не равен нулю, в противном случае возвращает второй операнд.

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

Оператор COALESCE: приложение Power Query

Второй сценарий — это вызов, предоставляемый Excel BI в LinkedIn .

Оператор COALESCE: приложение Power Query

Excel BI предлагает ежедневные задания для Excel и Power Query . Но в большинстве случаев задачи Excel также можно решить с помощью Power Query. Цель второго примера — отфильтровать все строки, не состоящие из двух слов.

Оглавление

Пример №1: замена значений с помощью оператора COALESCE

Откройте редактор запросов. Убедитесь, что панели формул и параметры запроса видны. Если нет, перейдите на вкладку «Вид» и переключите настройки макета .

Оператор COALESCE: приложение Power Query

В первом примере используется таблица, содержащая два столбца.

Оператор COALESCE: приложение Power Query

Выберите столбец 2 и перейдите на вкладку «Преобразование». Затем нажмите «Заменить значения ».

Оператор COALESCE: приложение Power Query

В мастере замены значений не вносите никаких изменений и нажмите OK .

Оператор COALESCE: приложение Power Query

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

Использование конструкции IF THEN ELSE

В этом случае код должен искать нулевое значение. Если столбец 2 содержит нулевое значение, то оно будет заменено значением в столбце 1.

Когда вы закончите обновление кода, нажмите на галочку рядом с панелью формул.

Оператор COALESCE: приложение Power Query

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

Использование оператора COALESCE

Оператор COALESCE представлен двойным вопросительным знаком ( ?? ).

Вы можете использовать COALESCE при условном тестировании нулевых значений.

Чтобы использовать оператор COALESCE, вам сначала нужно скопировать синтаксис из предыдущего примера, а затем щелкнуть вкладку fx , расположенную в левой части строки формул. Это создает новый шаг в запросе.

Вставьте синтаксис, а затем обновите его с помощью оператора COALESCE. Поэтому вместо использования оператора If Then Else поместите двойной вопросительный знак между столбцом 2 и столбцом 1.

Оператор COALESCE: приложение Power Query

Если столбец 2 не возвращает значение null, вы получите значение из того же столбца. Но когда он возвращает нуль, вы получите значение из столбца 1.

Пример № 2: применение условных фильтров

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

Щелкните параметр фильтра в таблице и выберите случайный фильтр. Это заставит Power Query генерировать синтаксис M-кода .

Оператор COALESCE: приложение Power Query

Затем обновите синтаксис, чтобы отфильтровать строку, не состоящую из двух слов. Поскольку два слова обычно разделяются пробелами, вам нужно использовать команду Text.Split . Затем вам нужно поместить его в функцию List.Count , чтобы результат возвращал список значений.

После этого нажмите на галочку рядом с строкой формул. В полученной таблице видно, что она содержит строки с двумя словами. Однако в последней строке есть ошибка.

Оператор COALESCE: приложение Power Query

Ошибка возникает из-за того, что код обнаружил нулевое значение в наборе данных. Чтобы предотвратить подобные ошибки, вам нужно использовать оператор COALESCE.

Итак, в аргументе Text.Split поместите ?? после значения Name , а затем укажите, что будет отображаться в таблице, если будет найдено нулевое значение.

Оператор COALESCE: приложение Power Query

Заключение

В этом учебнике вы видели два практических примера, в которых оператор COALESCE может быть реализован вместо оператора If Then Else или конструкции Try Иначе.

Оператор COALESCE — полезный инструмент для предоставления значения по умолчанию для переменной, которая может быть нулевой или иметь другое значение по умолчанию. Он часто используется, чтобы избежать исключений нулевой ссылки или предоставить значение по умолчанию при работе с данными, которые могут отсутствовать или быть неполными.

Всего наилучшего,

Мелисса де Корте


Что такое 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 для своих бизнес-отчетов.

Что такое шлюз LuckyTemplates? Все, что тебе нужно знать

Что такое шлюз LuckyTemplates? Все, что тебе нужно знать

Что такое шлюз LuckyTemplates? Все, что тебе нужно знать