一、 首先打开 Power BI,在“开始”界面中选择一个新建的“空白查询”,并将其重命名为“日期表” 。
二、 在右侧实用程序面板中,单击“高级编辑器”按钮,打开“查询编辑器”窗口。
三、 在“查询编辑器”窗口中,输入以下代码,以生成日期表:
let //设置开始日期和结束日期 StartDate = #date(2021, 1, 1), EndDate = #date(2023, 12, 31),
//计算天数
DaysCount = Duration.Days(EndDate - StartDate) + 1,
//生成日期序列
DatesList = List.Dates(StartDate, DaysCount, #duration(1, 0, 0, 0)),
//将日期序列转化为表格
DatesTable = Table.FromList(DatesList, Splitter.SplitByNothing(), {"日期"}, null, ExtraValues.Error),
//增加列:年、季度、月、周、星期
InsertYear = Table.AddColumn(DatesTable, "年", each Date.Year([日期]), type number),
InsertQuarter = Table.AddColumn(InsertYear, "季度", each "Q" & Text.From(Date.QuarterOfYear([日期])), type text),
InsertMonth = Table.AddColumn(InsertQuarter, "月", each Date.MonthName([日期]), type text),
InsertWeek = Table.AddColumn(InsertMonth, "周", each "W" & Text.PadStart(Text.From(Date.WeekOfYear([日期])), 2, "0"), type text),
InsertWeekday = Table.AddColumn(InsertWeek, "星期", each Date.DayOfWeekName([日期]), type text),
InsertDayNumber = Table.AddColumn(InsertWeekday, "序号", each Date.DayOfYear([日期]), type number)
in InsertDayNumber
四、 单击“关闭和应用”按钮,关闭“查询编辑器”窗口。
五、 单击“日期表”查询的右上角,单击“加载”按钮,以将其加载到数据模型中。
通过以上步骤,就可以成功生成日期表,并包含了你所需的字段:序号、日期、年、季度、月、周、星期。
power bi dax函数建立2024.01.01——2024.01.31间的日期表,要求按以下顺序输出列:date,年月,年周,季度,星期
在Power BI DAX中,你可以通过组合一系列函数来创建一个包含2024年1月1日至2024年1月31日日期表,并按照所要求的顺序输出列。这里是一个示例表达式:
DateTable =
VAR StartDate = DATE(2024, 1, 1) -- 定义开始日期
VAR EndDate = DATE(2024, 1, 31) -- 定义结束日期
VAR AllDates = DATE_RANGE(StartDate, EndDate, 1) -- 创建所有日期的列表
RETURN (
ALL Dates AS date, -- 日期列
CALCULATE(MONTH(StartDate), START_DATE('AllDates')) AS '年月', -- 年月列
CALCULATE(WEEK(StartDate), START_DATE('AllDates')) AS '年周', -- 年周列
DIVIDE(YEAR(StartDate) + QUARTER(StartDate), 4) AS '季度', -- 季度列
DAYNAME(StartDate) AS '星期' -- 星期列
)