在 Power BI Desktop 中设置和使用日期表

Power BI Desktop 在后台工作,自动识别表示日期的列,然后代表用户为模型创建日期层次结构和其他启用元数据。 然后,用户可以在创建报表功能(如视觉对象、表、快速度量值、切片器等)时使用这些内置层次结构。 Power BI Desktop 通过代表用户创建隐藏表来生成此数据,然后用户可以将表用于报表和 DAX 表达式。

有关此自动行为的详细信息,请参阅在 Power BI Desktop 中应用自动日期/时间

许多数据分析师更倾向于创建其自己的日期表,这样做也可以。 在 Power BI Desktop 中,可以指定希望模型将其用作日期表的表,然后使用该表的日期数据创建与日期相关的视觉对象、表、快速度量值等。 指定自己的日期表时,可以控制在模型中创建的日期层次结构,并在快速度量值和使用模型日期表的其他操作中使用它们。

Screenshot of Power BI Desktop showing the Mark as date table dialog box.

设置自己的日期表的好处

Power BI 中的时间智能函数 需要对模型中的日期计算有一定的了解。 设置自己的日期表或使用 自动日期/时间 可使这些函数能够正常工作。 在一些特定情况下,需要设置自己的日期表:

  • 日期表与模型中其他表之间的关系基于数据类型与日期/时间不同的列。 例如,如果从数据仓库等源加载数据,通常会提供表示日期的特定列。 这些列(也称为代理键)通常存储为整数,格式为 yyyymmddd(例如:20201231 表示 2020 年 12 月 31 日)。 如果日期表与模型中利用此类列的其他表之间存在关系,需要设置自己的日期表以使用时间智能功能。
  • 如果要基于 Power BI 数据 在 Excel 数据透视表或数据透视图中使用高级日期筛选器

设置自己的日期表

若要设置日期表,请在“字段”窗格中选择要用作日期表的表,然后右键单击该表,在出现的菜单中选择“标记为日期表”>“标记为日期表”,如下图所示。

Screenshot of Power BI Desktop showing Mark as date table filter options in the Fields pane.

还可以选择该表,然后从“表工具”功能区中选择“标记为日期表”,如此处所示。

Screenshot of Power BI Desktop showing the Mark as date table button and options filter.

指定自己的日期表时,Power BI Desktop 会对该列及其数据执行以下验证,以确保数据:

  • 包含唯一值。
  • 不包含任何 null 值。
  • 包含连续的日期值(从开头到末尾)。
  • 如果它是“日期/时间”数据类型,则它在每个值间具有相同的时间戳。

创建自己的日期表有两种可用方案,每种都是合理的方法:

  • 第一种方案在使用规范或基本日期表和层次结构时适用。 此方案将在数据中使用符合前面所述的日期表验证条件的表。

  • 第二种方案用于将来自 Analysis Services 的表与想要用作日期表的 dim date 字段结合使用的情况。

指定日期表后,可以选择将该表中的哪一列作为日期列。 可以通过选择“字段”窗格中的表指定要使用的列,然后右键单击该表并选择“标记为日期表”>“日期表设置”。 此时将出现以下窗口,可以从窗口的下拉列表中选择要用作日期表的列。

Screenshot of Power BI Desktop showing the Mark as date table dialog box with an important note.

请务必注意,用户在指定自己的日期表时,Power BI Desktop 不会自动创建将代表用户构建到模型中的层次结构。 如果以后取消选择日期表(并且不再具有手动设置的日期表),Power BI Desktop 将针对表中的日期列为用户重新创建自动创建的内置日期表。

同样需要注意的是,当你将表标记为日期表时,Power BI Desktop 会删除内置(自动创建)的日期表。 之前基于这些内置表创建的任何视觉对象或 DAX 表达式将不再正常工作。

将日期表标记为相应的数据类型

指定自己的日期表时,需要确保数据类型已正确设置。 用户想要将“数据类型”设置为“日期/时间”或“日期”。 为此,可执行以下步骤:

  1. 从“字段”窗格中选择日期表,并根据需要将其展开,然后选择要用作日期的列。

    Screenshot of Power BI Desktop showing the Date filter in the Fields pane.

  2. 在“列工具”选项卡上,选择“数据类型”,然后选择下拉箭头以显示可用的数据类型。

    Screenshot of Power BI Desktop showing the Modeling tab with the Data Type filter selected.

  3. 指定列的数据类型。

有关本文的更多信息,请参阅以下资源: