时间 Dimension at Second Grain with 功率查询 (M) Supporting 时间 Bands:
在查询编辑器中复制/粘贴以下代码’s Advanced Editor to generate 时间 dimension 在 功率查询:
let
Source = Table.FromList({1..86400}, Splitter.SplitByNothing()),
#"Renamed Columns" = Table.RenameColumns(Source,{{"Column1", "ID"}}),
#"时间 Column Added" = Table.AddColumn(#"Renamed Columns", "时间", each 时间.From(#datetime(1970,1,1,0,0,0) + #duration(0,0,0,[ID]))),
#"Hour Added" = Table.AddColumn(#"时间 Column Added", "Hour", each 时间.Hour([Time])),
#"Minute Added" = Table.AddColumn(#"Hour Added", "Minute", each 时间.Minute([Time])),
#"5 Min Band Added" = Table.AddColumn(#"Minute Added", "5 Min Band", each 时间.From(#datetime(1970,1,1,0,0,0) + #duration(0, 0, Number.RoundDown(Time.Minute([Time])/5) * 5, 0)) + #duration(0, 0, 5, 0)),
#"15 Min Band Added" = Table.AddColumn(#"5 Min Band Added", "15 Min Band", each 时间.From(#datetime(1970,1,1,0,0,0) + #duration(0, 0, Number.RoundDown(Time.Minute([Time])/15) * 15, 0)) + #duration(0, 0, 15, 0)),
#"30 Min Band Added" = Table.AddColumn(#"15 Min Band Added", "30 Min Band", each 时间.From(#datetime(1970,1,1,0,0,0) + #duration(0, 0, Number.RoundDown(Time.Minute([Time])/30) * 30, 0)) + #duration(0, 0, 30, 0)),
#"45 Min Band Added" = Table.AddColumn(#"30 Min Band Added", "45 Min Band", each 时间.From(#datetime(1970,1,1,0,0,0) + #duration(0, 0, Number.RoundDown(Time.Minute([Time])/45) * 45, 0)) + #duration(0, 0, 45, 0)),
#"60 Min Band Added" = Table.AddColumn(#"45 Min Band Added", "60 Min Band", each 时间.From(#datetime(1970,1,1,0,0,0) + #duration(0, 0, Number.RoundDown(Time.Minute([Time])/60) * 60, 0)) + #duration(0, 0, 60, 0)),
#"Removed Other Columns" = Table.SelectColumns(#"60 Min Band Added",{"时间", "Hour", "Minute", "5 Min Band", "15 Min Band", "30 Min Band", "45 Min Band", "60 Min Band"}),
#"Changed 类型" = Table.TransformColumnTypes(#"Removed Other Columns",{{"时间", type time}, {"Hour", 在t64.Type}, {"Minute", 在t64.Type}, {"5 Min Band", type time}, {"15 Min Band", type time}, {"30 Min Band", type time}, {"45 Min Band", type time}, {"60 Min Band", type time}})
in
#"Changed 类型"
在 我前阵子发表的文章 I showed different methods of creating 时间 dimension 在 Power BI 和 Tabular models. 的时间 dimension I explained was 在 Minutes. 在这篇文章中,我 show you simple way to create 时间 dimension supporting Seconds. As this is a quick tip, I only show you how to get the 时间 和 ID columns 在 the 时间 dimension. If you need to add time bands (time buckets) 查看此以获取更多详细信息.
时间 Dimension 在 Seconds Grain with 功率查询 (M):
Copy/paste the code below 在 Advanced Editor to generate 时间 dimension 在 功率查询:
let
Source = Table.FromList({1..86400}, Splitter.SplitByNothing()),
#"Renamed Columns" = Table.RenameColumns(Source,{{"Column1", "ID"}}),
#"时间 Column Added" = Table.AddColumn(#"Renamed Columns", "时间", each 时间.From(#datetime(1970,1,1,0,0,0)+#duration(0,0,0,[ID]))),
#"Changed 类型" = Table.TransformColumnTypes(#"时间 Column Added",{{"ID", 在t64.Type}, {"时间", type time}})
in
#"Changed 类型"