Data Modeling With Dax 简明教程
Extending the Data Model
在本章中,您将学习如何扩展在前面的章节中创建的数据模型。扩展数据模型包括:
-
Addition of tables
-
在现有表中添加计算列
-
在现有表中创建度量
其中,创建度量至关重要,因为它涉及在数据模型中提供新的数据见解,这些见解将使用户在分析数据和做出决策时可以避免返工并节省时间。
由于损益分析涉及使用时间段并且您将使用 DAX 时间智能函数,因此您需要在数据模型中拥有“日期”表。
如果您不了解“日期”表,请通读章节——理解“日期”表。
您可以按以下方式扩展数据模型 -
-
为了在数据表(即“财务数据”表)与“日期”表之间创建关系,您需要在“财务数据”表中创建计算列“日期”。
-
为了执行不同类型的计算,您需要在数据表 - “财务数据”和查找表 - “帐户”和“地理位置”之间创建关系。
-
您需要创建各种度量,这些度量可帮助您执行多个计算并进行所需的分析。
这些步骤实质上构成了使用数据模型进行损益分析的数据建模步骤。但是,这是对您要使用 Power Pivot 数据模型执行的任何类型数据分析执行的一系列步骤。
此外,您还将在后续章节中了解如何创建度量以及如何在 Power 透视表中使用它们。这将让您充分了解使用 DAX 建模数据和使用 Power 透视表对数据进行分析的情况。
Adding a Date Table to the Data Model
为跨越财政年度的时间段创建“日期”表,如下所示 -
-
在新 Excel 工作表中创建一个单列表格,其中标题为 - “日期”,连续日期范围从 7/1/2011 到 6/30/2018。
-
从 Excel 中复制表格并将其粘贴到 Power Pivot 窗口中。这将在 Power Pivot 数据模型中创建一个新表格。
-
将该表命名为“日期”。
-
确保“日期”表中的“日期”列的数据类型为 - 日期 (DateTime)。
接下来,您需要根据以下步骤向“日期”表中添加计算列——财政年度、财政季度、财政月份和月份 -
Fiscal Year
假设财政年度末为 6 月 30 日。那么,一个财政年度从 7 月 1 日跨度到 6 月 30 日。例如,时期 7/1/2011 (7/1/2011) 至 6/30/2012 (6/30/2012) 将是财政年度 2012 年。
在“日期”表中,假设您想表示与 FY2012 相同的内容。
-
你需要首先提取日期的财政年度部分,并用 FY 附加。对于 2011 年 7 月到 2011 年 12 月的日期,财政年度为 1+2011。对于 2012 年 1 月到 2012 年 6 月的日期,财政年度为 0+2012。概括地说,如果财政年度结束的月份为 FYE,请执行以下操作 - Integer Part of ((Month – 1)/FYE) + Year 接下来,获取最右边的 4 个字符以获取财政年度。
-
在 DAX 中,你可以表示为 -RIGHT(INT((MONTH('Date'[Date])-1)/'Date'[FYE])+YEAR('Date'[Date]),4)
-
使用 DAX 公式 -="FY"&RIGHT(INT((MONTH('Date'[Date])-1)/'Date'[FYE])+YEAR('Date'[Date]),4) 在 Date 表中添加计算的列 Fiscal Year
Fiscal Quarter
如果 FYE 表示财政年度结束的月份,则财政季度可获得为
Integer Part of ((Remainder of ((Month+FYE-1)/12) + 3)/3)
-
在 DAX 中,你可以表示为 -INT((MOD(MONTH('Date'[Date])+'Date'[FYE]-1,12)+3)/3)
-
使用 DAX 公式 -'Date'[FiscalYear]&"-Q"&FORMAT( INT((MOD(MONTH('Date'[Date]) + 'Date'[FYE]-1,12) + 3)/3), "0") 在 Date 表中添加计算的列 Fiscal Quarter
Adding Calculated Columns
要创建财务数据表和日期表之间的关系,需要在财务数据表中创建一列日期值。
-
在财务数据表中添加计算的列日期,使用 DAX 公式 −= DATEVALUE ('Finance Data'[Fiscal Month])
Defining Relationships Between Tables in the Data Model
在数据模型中有以下表 −
-
数据表 - 财务数据
-
查找表 - 帐户和地理位置
-
Date table - Date
若要在数据模型中的表格之间定义关系,请执行以下步骤:
-
查看 Power Pivot 中的“图表视图”中的表格。
-
创建表格之间的下列关系:财务数据表格与帐户表格间的关系,其中包含帐户列。财务数据表格与地理位置表格间的关系,其中包含利润中心列。财务数据表格与日期表格间的关系,其中包含日期列。