Power BI:将文本(yyyymmdd)转换为日期(dd/mm/yyyy)

6
我正在尝试使用 Power Query Editor 在 Power BI 中将 A 列 中的字符串:yyyymmdd 转换为 dd/mm/yyyy 日期格式。 我已经可以在 Excel 中使用以下公式执行此操作: 有什么想法吗?
=DATE(LEFT(A2,4),MID(A2,5,2),RIGHT(A2,2))
6个回答

6

解决方案1: 高亮显示特定列,然后在“转换”选项卡上,您可以选择“检测数据类型”。
解决方案2: 尝试创建一个名为[dateFormatted]的新列,并应用以下公式:

dateFormatted = Date(Left([date],4),Right(left([date],6),2),right([date],2))

选择新列并将其类型更改为日期,如下所示:

enter image description here

[dateFormatted] 现在将会是日期类型,格式为:dd Mmm yyyy


解决方案2需要在结尾处添加一个额外的)。 - rohrl77
对于解决方案2(以及可能仅需要日期类型输出而不需要h:m:s精度的用户) - 在创建新列时,如果它恰好是“日期/时间”类型,则可以将其切换为“日期”类型。否则,每个新条目都将包含形式为00:00:00值的冗余的h:m:s精度信息。 - Rishabh B

3
你可以使用Date.FromText函数。
= Date.ToText( Date.FromText( "20221231" ), "dd/MM/yyyy" )

2

解决方案:高亮问题列,在“转换”选项卡上选择“检测数据类型”。这将把它从字符串切换到整数。然后更改数据类型为日期。提供的格式为dd/mm/yyyy。 希望其他人也能找到这个有用。


您不需要执行“检测数据类型”步骤。只需选择列标题左侧的图标,然后选择日期即可。 - TheRizza

2

只需将数据类型设置为日期。

M-代码(虽然可以通过GUI完成)


Translated:

只需将数据类型设置为日期。

M-代码(虽然可以通过 GUI 完成)

let
    Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"Column1", type date}})
in
    #"Changed Type"

2
使用示例中的插入列功能,我将DDMMYYYY(转换为文本)转换为DD/MM/YYYY(转换为日期),最终结果如下:
= Table.AddColumn(#"Changed Type", "OrganisationStartDate", each Text.Combine({Text.Start([organisation_start_date], 2), "/", Text.Middle([organisation_start_date], 2, 2), "/", Text.Middle([organisation_start_date], 4)}), type text)

0
如果您在文本中嵌入了日期,请尝试以下方法来提取日期。 例如:Capability[Source.Name] = CapabilityExtract_06142023.csv
ExtractDate = Date(MID(Capability[Source.Name],23,4),MID(Capability[Source.Name],19,2), MID(Capability[Source.Name],21,2))

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接