
Я использую редактор Power Query в Excel для Microsoft 365.
Таблица A
содержит столбец ID
, содержащий уникальный идентификатор. Этот идентификатор обычно числовой, но иногда он содержит текст. Учитывая это, я установил тип данных этого столбца как Text
.
В некоторых случаях значения в этом столбце отображаются как числовые, но имеют один или несколько начальных нулей (например, "042"
). Поскольку это рассматривается как текстовое значение, все начальные нули сохраняются.
Таблица B
также имеет столбец ID
типа Text
, который также содержит уникальный идентификатор, который обычно является числовым, но иногда содержит текст. Единственное различие между A.ID
и B.ID
заключается в том, что когда B.ID
значения являются числовыми, они никогда не имеют начальных нулей.
Я пытаюсь объединить (слить) таблицу A
и таблицу B
по столбцу ID
. Из-за описанной выше ситуации я теряю много строк, так как, например, ID
значения "042" и "42" не совпадают, так как они обрабатываются как текст.
Я хотел бы добавить в свой запрос прикладной шаг, который удаляет начальные нули из ID
числовых значений.
Я пробовал менять тип на ID
и Whole Number
обратно на Text
. Это удаляет ведущие нули в числовых ID
значениях, но приводит к ошибкам в нечисловых ID
значениях.
Есть ли способ в редакторе Power Query удалить начальные нули из числовых значений, которые хранятся в виде Text
?
Или есть ли лучший способ подойти к этому вопросу?
решение1
Вы можете использовать это:
Создайте пользовательский столбец и попробуйте эту команду. Она удаляет начальные нули из числовых значений, сохраненных в виде текста.
=Text.TrimStart([ColName], "0")