Формат даты Power Query

Я использую Power Query для доступа к моей базе данных PostgreSQL и фильтрации данных по определенным параметрам даты. Однако для одной из моих таблиц базы данных формат даты - YYYYMM (201510).

Можно ли преобразовать этот формат в актуальный формат даты?


person J. Chan    schedule 12.10.2015    source источник


Ответы (3)


Power Query распознает YYYY-MM или YYYYMMDD как допустимые форматы даты, но не YYYYMM. Вот решение, добавляющее дефис и изменяющее типы:

  1. Разделить текст по количеству символов, 4
  2. Удалите шаг автоматического определения типа номера.
  3. Объедините столбцы с помощью настраиваемого разделителя -
  4. Изменить тип на дату

Вот простой пример:

let
    Source = Csv.Document("201510
201502"),
    SplitColumnByPosition = Table.SplitColumn(Source,"Column1",Splitter.SplitTextByPositions({0, 4}, false),{"Column1.1", "Column1.2"}),
    MergedColumns = Table.CombineColumns(SplitColumnByPosition,{"Column1.2", "Column1.1"},Combiner.CombineTextByDelimiter("-", QuoteStyle.None),"Merged"),
    ChangedType = Table.TransformColumnTypes(MergedColumns,{{"Merged", type date}})
in
    ChangedType
person Carl Walsh    schedule 12.10.2015

Пожалуйста, попробуй:

=DATE(LEFT(A1,4),RIGHT(A1,2),1)
person pnuts    schedule 12.10.2015

В этом случае я предпочитаю создать новый настраиваемый столбец и впоследствии удалить исходный столбец. В вашем случае формула для настраиваемого столбца будет выглядеть так:

=Text.Range([DateColumn],0,4) & "-" & Text.Range([DateColumn],4,2) & "-01"

После добавления настраиваемого столбца вы можете изменить его формат на «Дата».

Дополнительные сведения см. В справочнике по формуле M: https://msdn.microsoft.com/en-us/library/mt211003.aspx

person Stephan    schedule 05.07.2016