在PowerBI中将数字转换为日期格式

问题描述

我很难在PowerBI(在查询编辑器中)中将数字格式转换为日期/日期时间格式。

csv中的行格式如下(德语时区):

202007201155180
201912012200001

这将导致:

20.07.2020 11:55:18
01.12.2019 22:20:00

解决方法

您可以使用除法(Number.IntegerDivide)和模(Number.Mod)来计算日期部分(年,月,日,小时等)并构造日期时间值({{3} })中的#datetime中,例如像这样:

#datetime(
    Number.IntegerDivide([num],100000000000),// Year
    Number.IntegerDivide(Number.Mod([num],1000000000),// Month
    Number.IntegerDivide(Number.Mod([num],10000000),// Day
    Number.IntegerDivide(Number.Mod([num],100000),// Hour
    Number.IntegerDivide(Number.Mod([num],1000),// Minute
    Number.IntegerDivide(Number.Mod([num],10) // Second
    )

这将为您提供一个新的datetime列:

custom column

但是请注意,201912012200001不是您所说的01.12.2019 12:20:00,而是01.12.2019 22:00:00,并且最后一位数字没有转换,因此第二位的分数(十分之一)丢失了。