Страницы: 1
RSS
PBI: сравнение с частью слова
 
Добрый день.

В Excel есть возможность вместо части слова указывать звездочку *, например =СЧЁТЕСЛИ(B1:B11;"*вывод*") в результате чего посчитаются все строки, содержащие ячейку со словом "Пятновыводитель")

Как такое же провернуть в Power BI (или в Query)?

Например я хочу все SKU, содержащие в названии "Пятновыводитель детский" или "пятновыводитель органический" или "набор пятновыводителей", объединить в группу "Пятновыводители".

Пробовал и не получилось:
if Text.Contains([Название], "*пятно*") then "Пятновыводитель"
 
Код
if Text.Contains([Название], "пятно") then "Пятновыводитель"


не нужны здесь *

функция чувствительна к регистру, поэтому переводим в строчные или прописные исходные данные и текст для поиска
 
Цитата
mechanix 85 написал:
переводим в строчные или прописные
можно так:
Код
Text.Contains( [Название], "пятно", Comparer.OrdinalIgnoreCase )
Вот горшок пустой, он предмет простой...
 
о новости в новом году))
PooHkrd, какую литературу почитать про М?
 
Цитата
написал:
новости в новом году
ну не такие уж и новости...я об этом параметре писал еще год назад :)
Фильтр без учета регистра в Power Query
На тот момент работало не во всех версиях PQ, кстати.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
, , благодарю, не знал.

Можно еще вопрос вдогонку?
Почему у меня выдает ошибку на это?
Код
if Text.Contains([Название], "губк посуд", Comparer.OrdinalIgnoreCase) then "Губка для посуды" 

"губк & посуд" тоже не подходит. Или сравнение по двум обрывкам слов в принципе недопустимо?
 
Цитата
написал:
Почему у меня выдает ошибку на это?
1. А где Вы это прописали?
2. А ошибка ни о чем не говорит? Например - а где здесь else?
Код
if Text.Contains([Название], "губк посуд", Comparer.OrdinalIgnoreCase) then "Губка для посуды" else ""
3. Что значит по обрывкам двух? Вы собрались проверить есть ли в тексте или "губк" или "посуд"? Может надо начать синтаксис учить? В этом случае надо составлять условие OR или AND:
Код
Text.Contains([Название], "губк", Comparer.OrdinalIgnoreCase) or Text.Contains([Название], "посуд", Comparer.OrdinalIgnoreCase) then "Губка для посуды" else ""
Код
Text.Contains([Название], "губк", Comparer.OrdinalIgnoreCase) and Text.Contains([Название], "посуд", Comparer.OrdinalIgnoreCase) then "Губка для посуды" else ""
Изменено: Дмитрий(The_Prist) Щербаков - 10.01.2022 19:00:35
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
теперь понятно, спасибо.
Синтаксис я знаю, просто вместо AND тулил &. Мозг уже путает DAX и M, также как AND и &, OR и ||
Страницы: 1
Наверх