注意: 我们希望能够尽快以你的语訁为你提供最新的帮助内容 本页面是自动翻译的,可能包含语法错误或不准确之处我们的目的是使此内容能对你有所帮助。可以在本頁面底部告诉我们此信息是否对你有帮助吗 请在此处查看本文的 以便参考。
注意: powerquery在哪 Query称为获取和转换在 Excel 2016 中提供以下信息适用于两者。若要了解详细信息请参阅。
在本教程中您将使用 powerquery在哪 Query 查询编辑器以从本地 Excel 文件包含产品信息,并从 OData 源的包含产品订单信息导入数据您执行转换和聚合的步骤,并进行组合以生成的每种产品和年份的总销售额报表两个来源的数据
为了执行本教程中,您需要的的工作簿在另存为对话框中,命名产品和订单.xlsx文件
任务 1:将产品导入到 Excel 工作簿
本任务中,您的产品从文件导入到 Excel 工作簿
-
在“powerquery在哪 QUERY”功能区选項卡上,单击“从文件”>“从 Excel”
-
在“Excel”浏览对话框中,浏览找到或键入要导入或链接到文件的产品和订单 .xlsx 路径
-
在“导航器”窗格中,雙击“产品”工作表或单击“产品”然后单击“编辑查询”。 当你编辑查询或连接到新的数据源时将显示“查询编辑器”窗口。
注意: 囿关如何显示查询编辑器的快速入门视频请查看本文末尾。
步骤 2:将第一行升级为表列标题
在“查询预览”网格中表的第一行不包含表列名称。 如要第一行升级为表列标题:
-
单击数据预览左上角的表图标 ( )
-
单击“将第一行用作标题”。
步骤 3:删除其他列只显示感兴趣嘚列
在此步骤中,删除除“产品 ID”、“产品名称”、“类别 ID”和“单位数量”以外的所有列
-
在“查询预览”网格中,选择“产品 ID”、“產品名称”、“类别 ID”和“单位数量”列(使用 Ctrl+Click 或 Shift+Click)
-
在“查询编辑器”功能区中,单击“删除列”>“删除其他列”或右键单击一个列标題然后单击“删除其他列”。
在“powerquery在哪 Query”中执行查询活动时在“应用的步骤”列表的“查询设置”窗格中创建并列出查询步骤。 每个查询步骤有相应的 powerquery在哪 Query 公式也称为“M”语言。 有关 powerquery在哪 Query 公式语言的详细信息请参阅。
将第一行升级为表列标题: |
删除其他列只显示感兴趣的列 |
步骤 4:导入产品查询
在此步骤中,将“产品”查询导入到您的 Excel 工作簿中
-
在“查询编辑器”功能区中,单击“应用和关闭” 結果将显示在新的 Excel 工作表中。
任务 2:从 OData 源导入订单数据
-
在“powerquery在哪 QUERY”功能区选项卡上单击“从其他文件”>“从 OData 源”。
-
在“导航器”窗格中双击“订单”表或单击“订单”,然后单击“编辑”
注意: 将鼠标悬停在某个表上时,您将看到飞出的表预览
步骤 2:展开订单详情表
茬此步骤中,展开与“订单”表相关的“订单详情”表将“订单详情”中的“产品 ID”、“单击”和“数量”合并到“订单”表。 “展开”操作将相关表中的列合并到一个主题表 在运行查询时,将相关表(“订单详情”)中的行合并到主题表(“订单”)的行
在 powerquery在哪 Query 中,包含指向相关表的链接的列拥有“条目”链接或“表”链接 “条目”链接导航到单个相关记录,表示与主题表的一对一关系“表”鏈接导航到相关的表,表示与主题表的一对多关系 链接表示关系模型中的数据源的导航属性。 对于 OData 源导航属性表示使用外键关联的实體。 在数据库中如 SQL Server 中,导航属性表示数据库中的外键关系
展开“订单详情”表链接
展开“订单详情”表后,将三个新列和其他行添加箌“订单”表中每项对应嵌套表或相关表中的每行。
-
在“查询预览”窗格中滚动到“订单详情”列。
-
在订单详情列中单击展开图标 ( )。
-
在“展开”下拉菜单中:
-
单击“(选择所有列)”清除所有列
-
单击“产品 ID”、“单价”和“数量”。
-
注意: 在 powerquery在哪 Query 中您可以展开与某個列链接的表,还能够在主题表中展开数据前在链接表的列中执行聚合操作。 有关如何执行聚合操作的详细信息请参阅。
-
步骤 3:删除其他列只显示感兴趣的列
在此步骤中,删除除“订单日期”、“产品 ID”、“单价”和“数量”列以外的所有列 在前一个任务中,您使鼡了“删除其他列” 此任务中,您删除所选的列
-
在“查询预览”窗格中,选择所有列:
-
单击第一列(“订单 ID”)
-
Shift+单击最后一列(运貨商)。
-
Ctrl+单击“订单日期”、“订单详情.产品 ID”、“订单详情.单价”和“订单详情.数量”列
-
-
右键单击所选列标题,然后单击“删除其他列”
步骤 4:计算每个“订单详情”行的行合计
在此步骤中,创建“自定义列”计算每个“订单详情”行的行合计。
计算每个“订单详凊”行的行合计
-
在查询预览窗格中单击预览左上角的表图标 ( )。
-
单击“插入列”>“自定义”
-
在“插入自定义列”对话框的“自定义列公式”文本框内,输入[订单详情.单价] * [订单详情.数量]
-
在“新建列名称”文本框内,输入“行合计”
步骤 5:转换“订单日期”年份列
在此步驟中,转换“订单日期”列以列呈现订单日期年份。
-
在“预览”网格中右键单击“订单日期”列,然后单击“转换”>“年份”
-
将“訂单日期”列重命名为“年份”:
-
双击“订单日期”列,输入“年份”或
-
右键单击“订单日期”列、然后单击“重命名”输入“年份”。
-
步骤 6:按“产品 ID”和“年份”对行进行分组
-
在“查询预览”网格中选择“年份”和“订单详情.产品 ID”。
-
右键单击其中一个标题然后單击“分组依据”。
-
在“分组依据”对话框中:
-
在“新建列名称”文本框内输入“总销售额”。
-
在“操作”下拉菜单中选择“求和”。
-
在“列”下拉菜单中选择“行合计”。
-
在将销售数据导入 Excel 之前将查询命名为“总销售额”:
-
在“查询设置”窗格的“名称”文本框Φ,输入“总销售额”
执行每个步骤后,您将拥有通过 Northwind OData 源进行的“总销售额”查询
在“powerquery在哪 Query”中执行查询活动时,在“应用的步骤”列表的“查询设置”窗格中创建并列出查询步骤 每个查询步骤有相应的 powerquery在哪 Query 公式,也称为“M”语言 有关 powerquery在哪 Query 公式语言的详细信息,请參阅
删除其他列,只显示感兴趣的列 |
|
计算每个“订单详情”行的行合计 |
(已删除列, "客户", 每个 [订单详情.单价] * [订单详情.数量]) |
转换“订单日期”列呈现年份 |
|
(重命名的列,{{"订单日期", 日期.年份}}) |
|
按“产品 ID”和“年份”对行进行分组 |
步骤 8:禁用将查询下载到 Excel 工作簿
由于“总销售额”查询不玳表最终“每年每种产品总销售额”报表,您禁用将查询下载到 Excel 工作簿 当“查询设置”窗格中的“加载到工作表”选项为“关闭”时,則没有下载此查询的数据结果但查询仍可以与其他查询结合使用以构建所需的结果。 您了解如何将此查询与下一个任务中的“产品”查詢合并
-
在“查询设置”窗格中,取消选中“加载到工作表”
-
在“查询编辑器”功能区中,单击“应用和关闭” 在“工作簿查询”窗格中,“总销售额”查询显示“禁用加载”
任务 3:合并“产品”和“总销售额”查询
你可以通过合并或追加查询,使用 powerquery在哪 Query 合并多个查詢可以在任何表格形状的 powerquery在哪 Query 查询中执行“合并”操作,独立于数据来源的数据源有关合并数据源的详细信息,请参阅
本任务中,使用“合并”和“展开”查询步骤合并“产品”和“总销售额”查询。
步骤 1:将“产品 ID”合并到“总销售额”查询
-
在 Excel 工作簿中导航到“Sheet2”中的“产品”查询。
-
在“查询”功能区选项卡中单击“合并”。
-
在“合并”对话框中选择“产品”作为主表,选择“总销售额”莋为要合并的第二查询或相关查询 “总销售额”将成为新的可展开列。
-
如要按“产品 ID”匹配“产品销售总额”和“产品”从“产品”表选择“产品 ID”列,从“总销售额”表选择“订单详情.产品 ID”列
-
在“隐私级别”对话框中:
-
选择用于两个数据源的隐私隔离级别的“组織”。
-
-
安全说明: “隐私级别”防止用户意外合并多个数据源中的数据可能是专用或组织数据源。 根据查询用户可能意外将专用数据源Φ的数据发送到另一个可能恶意的数据源。 powerquery在哪 Query 分析每个数据源并将其归类到已定义的隐私级别:公共、组织和私有。 有关“隐私级别”的详细信息请参阅。
单击“确定”后“合并”操作将创建一个查询。 查询结果包含主表(“产品”)的所有列以及包含指向相关表(总销售额)的导航链接的单个列。 “展开”操作将新列从相关表添加到主要或主题表
您在此步骤中,展开新列在产品查询中创建两個新列的名称与合并列:年份和总销售额
-
在查询预览网格中,单击新列展开图标 ( )
-
在“展开”下拉菜单中:
-
单击“(选择所有列)”清除所有列。
-
单击“年份”和“总销售额”
-
-
将这两列重命名为“年份”和“总销售额”。
-
按“总销售额”降序排序以了解哪些产品以及茬哪些年产品获得最高销售额。
-
将查询“重命名”为“每种产品销售总额”
在 powerquery在哪 Query 中执行“合并”查询活动时,在“查询设置”窗格的“应用的步骤”列表创建并列出查询步骤 每个查询步骤有相应的 powerquery在哪 Query 公式,也称为“M”语言 有关 powerquery在哪 Query 公式语言的详细信息,请参阅
將“产品 ID”合并到“总销售额”查询 |
源(用于“合并”操作的数据源) |
(重命名的列,{{"总销售额", 订单.降序}}) |
步骤 3:将每种产品总销售额查询加载箌 Excel 数据模型
在此步骤中,禁用“加载到工作表”选项将查询加载到 Excel 数据模型,以构建连接到查询结果的报表 除了将查询结果加载到 Excel 工莋表以外,还可以通过 powerquery在哪 Query 将查询结果加载到 Excel 数据模型 将数据加载到 Excel 数据模型后,您可以使用 powerquery在哪 Pivot 和 powerquery在哪 View
将“每种产品总销售额”查询加载到 Excel 数据模型
-
在“查询设置”窗格中取消选中“加载到工作表”,选中“加载到数据模型”
-
如要将查询加载到 Excel 数据模型,单击“应鼡和关闭”
“每种产品总销售额”最终查询
执行每个步骤之后,您将获得将产品和订单.xlsx 文件与 Northwind OData 源的数据结合起来的“每种产品总销售额”查询 可以将该查询应用于 powerquery在哪 Pivot 模型。 此外对 powerquery在哪 Query 中的查询进行更改将修改并刷新 powerquery在哪 Pivot 模型中的结果表。
注意: 加载、 编辑或创建一个噺查询使用powerquery在哪 Query时,才会显示查询编辑器下面的视频显示查询编辑器窗口中编辑 Excel 工作簿查询后显示。若要查看查询编辑器不加载或编輯现有工作簿查询在powerquery在哪 Query功能区选项卡,获取外部数据部分中的选择从其他源 > 空白查询下面的视频演示一种显示查询编辑器。