Excel DAX - 数据模型中的数据更新



DAX 用于对 Excel Power Pivot 数据模型中的数据进行计算。DAX 使数据建模和报表活动能够以有效的方式处理。但是,这需要不时更新数据模型中的数据,以反映当前数据。

您可以通过建立数据连接,将数据从外部数据源导入到工作簿的数据模型中。您可以随时更新源中的数据。如果您从包含实时销售信息的关系数据库或每天更新多次的数据馈送中获取数据,此选项非常方便。

更新数据模型中数据的方法

您可以通过以下方式更新数据模型中的数据:

  • 定期刷新数据模型中的数据。
  • 更改数据源,例如连接属性。
  • 在源数据更改后更新数据模型中的数据。
  • 筛选数据以选择性地加载数据源中表中的行。

刷新数据模型中的数据

除了从现有源获取更新的数据外,每当您对源数据的架构进行更改时,都需要刷新工作簿中的数据。这些更改可能包括添加列或表,或更改导入的行。

请注意,添加数据、更改数据或编辑筛选器始终会触发依赖于该数据源的 DAX 公式的重新计算。有关详细信息,请参阅“重新计算 DAX 公式”一章。

数据模型中有两种类型的数据刷新:

手动刷新

如果您选择手动刷新选项,则可以随时手动刷新数据模型中的数据。您可以刷新所有数据(这是默认设置),也可以手动选择要为各个数据源刷新的表和列。

自动或计划刷新

如果您已将工作簿发布到支持 PowerPivot 的 PowerPivot 库或 SharePoint 网站,则您或 SharePoint 管理员可以创建计划来自动更新工作簿中的数据。在这种情况下,您可以在服务器上安排无人值守的数据刷新。

手动刷新现有数据源

如果您需要更新现有数据源中的数据或获取最新数据以设计新的 DAX 公式,则可以随时手动刷新数据。您可以刷新单个表、共享相同数据连接的所有表或数据模型中的所有表。

如果您已从关系数据源(例如 SQL Server 和 Oracle)导入数据,则可以在一个操作中更新所有相关表。将新数据或更新的数据加载到数据模型的操作通常会触发 DAX 公式的重新计算,这两者都可能需要一些时间才能完成。因此,在更改数据源或刷新从数据源获得的数据之前,您应该了解潜在的影响。

要刷新数据模型中单个表或所有表的数据,请执行以下操作:

  • 在 Power Pivot 窗口中的功能区上单击“开始”选项卡。
  • 单击“刷新”。
  • 单击下拉列表中的“刷新”以刷新选定的表。
  • 单击下拉列表中的“全部刷新”以刷新所有表。
Manually Refreshing

要刷新数据模型中使用相同连接的所有表的数据,请执行以下操作:

  • 在 Power Pivot 窗口中的功能区上单击“开始”选项卡。
  • 单击“获取外部数据”组中的“现有连接”。

将出现“现有连接”对话框。

  • 选择一个连接。
  • 单击“刷新”按钮。
Existing Connections

将出现“数据刷新”对话框,并在 PowerPivot 引擎从选定的表或数据源中的所有表重新加载数据时显示数据刷新进度信息。

有三种可能的结果:

  • 成功 - 报告导入到每个表中的行数。

  • 错误 - 如果数据库脱机,您不再拥有权限,则可能会发生错误。源中的表或列被删除或重命名。

  • 已取消 - 这意味着 Excel 未发出刷新请求,可能是因为连接上禁用了刷新。

Possible Outcomes

单击“关闭”按钮。

更改数据源

要更改数据模型中的数据,您可以编辑连接信息或更新 Power Pivot 窗口中数据模型中使用的表和列的定义。

您可以对现有数据源进行以下更改:

连接

  • 编辑数据库名称或服务器名称。
  • 更改源文本文件、电子表格或数据馈送的名称。
  • 更改数据源的位置。
  • 对于关系数据源,更改默认目录或初始目录。
  • 更改用于访问数据的身份验证方法或凭据。
  • 编辑数据源上的高级属性。

  • 添加或删除数据上的筛选器。
  • 更改筛选器条件。
  • 添加或删除表。
  • 更改表名。
  • 编辑数据源中的表和数据模型中的表之间的映射。
  • 从数据源中选择不同的列。

  • 更改列名。
  • 添加新列。
  • 从数据模型中删除列(不影响数据源)。

您可以通过以下方式编辑现有数据源的属性:

  • 您可以更改连接信息,包括用作源的文件、馈送或数据库,其属性或其他特定于提供程序的连接选项。

  • 您可以更改表和列映射,并删除对不再使用的列的引用。

  • 您可以更改从外部数据源获取的表、视图或列。

修改现有数据源的连接

您可以通过更改当前连接使用的外部数据源来修改您已创建的到外部数据源的连接。但是,要遵循的过程取决于数据源类型。

  • 在 PowerPivot 窗口中的功能区上单击“开始”选项卡。
  • 单击“获取外部数据”组中的“现有连接”。
Modifying Connection

将出现“现有连接”对话框。选择要修改的连接。

根据您正在更改的数据源类型,提供程序可能不同。此外,可用的属性可能需要更改。考虑一个连接到包含数据的 Excel 工作簿的简单示例。

Excel Workbook Contains Data
  • 单击“编辑”按钮。将出现“编辑连接”对话框。

  • 单击“浏览”按钮以查找相同类型(在此示例中为 Excel 工作簿)但名称或位置不同的另一个数据库。

  • 单击“打开”按钮。

将选择新文件。将显示一条消息,指出您已修改连接信息,需要保存并刷新表以验证连接。

Message
  • 单击“保存”按钮。您将返回到“现有连接”对话框。

  • 单击“刷新”按钮。将出现“数据刷新”对话框,显示数据刷新进度。将显示数据刷新的状态。有关详细信息,请参阅“手动刷新现有数据源”部分。

  • 数据刷新成功后,单击“关闭”。

  • 在“现有连接”对话框中单击“关闭”。

编辑表和列映射(绑定)

要编辑数据源更改时的列映射,请执行以下操作:

  • 在 Power Pivot 窗口中单击包含要修改的表的选项卡。

  • 在功能区上单击“设计”选项卡。

  • 单击“表属性”。

Editing Table

将出现“编辑表属性”对话框。

Edit Table Properties

您可以观察到以下内容:

  • 数据模型中选定表的名称显示在“表名”框中。

  • 外部数据源中相应表的名称显示在“源名称”框中。

  • 有两个选项用于来自“源”和“模型”的列名。

  • 如果数据源和数据模型中的列名称不同,则可以通过选择这些选项在两组列名称之间切换。

  • 选定表的预览出现在对话框中。

您可以编辑以下内容:

  • 要更改用作数据源的表,请在“源名称”下拉列表中选择与选定表不同的表。

  • 根据需要更改列映射:

    • 要添加存在于源中但不存在于数据模型中的列,请选中列名称旁边的复选框。对要添加的所有列重复此操作。下次刷新时,实际数据将加载到数据模型中。

    • 如果数据模型中的一些列在当前数据源中不再可用,则通知区域中会显示一条消息,其中列出了无效的列。您无需执行任何操作。

  • 单击“保存”按钮。

当您保存当前的一组表格属性时,您将收到一条消息 - 请等待。然后将显示检索到的行数。

在数据模型中的表格中,任何无效的列都会自动删除,并会添加新的列。

更改列名和数据类型

您可以按如下方式更改数据模型中表格中列的名称:

  • 双击列的标题。标题中列的名称将突出显示。

  • 键入新的列名,覆盖旧名称。或者,您可以按如下方式更改数据模型中表格中列的名称

  • 通过单击其标题来选择列。

  • 右键单击该列。

  • 在下拉列表中单击“重命名列”。

Changing Column Name

标题中列的名称将突出显示。键入新的列名,覆盖旧名称。

正如您所了解的,数据模型中表格中某一列中的所有值都必须具有相同的数据类型。

要更改列的数据类型,请执行以下操作:

  • 通过单击其标题来选择要更改的列。

  • 单击功能区上的“开始”选项卡。

  • 单击“格式”组中的控件以修改列的数据类型和格式。

Check the Controld

向数据源添加/更改筛选器

在导入数据时,您可以向数据源添加筛选器以限制数据模型中表格中的行数。稍后,您可以通过更改之前定义的筛选器来向数据模型中的表格中添加更多行或减少行数。

在导入期间向数据源添加筛选器

要在数据导入期间向数据源添加新的筛选器,请执行以下操作:

  • 在 Power Pivot 窗口中的功能区上单击“开始”选项卡。
  • 单击“获取外部数据”组中的一个数据源。

将出现“表格导入向导”对话框。

  • 继续执行“选择表格和视图”步骤。
  • 选择一个表格,然后单击“预览和筛选”。
Adding a Filter to Data Source

将出现“预览选定表格”对话框。

  • 单击要应用筛选器的列。
  • 单击列标题右侧的下拉箭头。
Preview Selected Table

要添加筛选器,请执行以下操作之一:

  • 在列值列表中,选择或清除一个或多个要筛选的值,然后单击“确定”。

    但是,如果值的数目非常多,则列表中可能不会显示各个项目。相反,您将看到消息 - “项目过多,无法显示”。

  • 单击“数字筛选器”或“文本筛选器”(取决于列的数据类型)。

    • 然后,单击一个比较运算符命令(如“等于”),或单击“自定义筛选器”。在“自定义筛选器”对话框中,创建筛选器,然后单击“确定”。

注意 - 如果您在任何阶段犯了错误,请单击“清除行筛选器”按钮并重新开始。

  • 单击“确定”。您将返回到“表格导入向导”的“选择表格和视图”页面。
View Page

如您所见,在“筛选器详细信息”列中,为定义了筛选器的列显示了链接“已应用筛选器”。

您可以单击该链接以查看向导构建的筛选器表达式。但是,每个筛选器表达式的语法取决于提供程序,您无法对其进行编辑。

Link to View
  • 单击“完成”以导入应用了筛选器的数据。
  • 关闭“表格导入向导”。

更改现有数据源的筛选器

导入数据后,您可能需要不时更新数据,方法是添加更多行或限制表格中的现有行。在这种情况下,您可以更改表格上的现有筛选器或添加新的筛选器。

  • 在 Power Pivot 窗口中的功能区上单击“开始”选项卡。

  • 单击“获取外部数据”组中的“现有连接”。将出现“现有连接”对话框。

  • 单击包含要更改筛选器的表格的连接。

  • 单击“打开”按钮。

Changing a Filter

您将进入“表格导入向导”对话框。重复上一节中的步骤来筛选列。

广告