Excel怎么选中多个数据库中的数据进行合并?

在现代数据处理工作中,我们经常需要将分散在不同数据库或数据源中的信息整合到一起,以进行全方位的分析,传统的复制粘贴方法不仅效率低下,而且容易出错,幸运的是,Excel提供的强大工具——Power Query(官方名称为“获取与转换数据”),可以轻松、高效地解决这个问题,本文将详细介绍如何利用Power Query,从单个数据库中的多个表格,乃至多个完全不同的数据库中选取并整合数据。

Excel怎么选中多个数据库中的数据进行合并?

认识核心工具:Power Query

Power Query是Excel内置的数据连接和转换工具,位于“数据”选项卡下,它的核心优势在于能够建立可刷新的、自动化的数据流程,一旦设置好查询,当下次源数据更新时,您只需点击一下“全部刷新”,Excel便会自动重复所有连接、转换和合并的步骤,极大地提升了工作效率,它无需编写复杂的代码,通过直观的图形化界面即可完成绝大多数数据整合任务。


从同一个数据库中选取多个表格

这是最常见的需求,您需要将一个SQL Server数据库中的“客户信息表”和“订单表”关联起来,操作步骤如下:

第一步:建立数据库连接

  1. 打开Excel,点击顶部菜单栏的“数据”选项卡。
  2. 在“获取与转换数据”组中,点击“获取数据”。
  3. 根据您的数据库类型,选择相应的选项,自数据库” > “自SQL Server”。
  4. 在弹出的对话框中,输入服务器名称和数据库信息,然后点击“确定”。
  5. 根据提示输入您的身份验证凭据(用户名和密码)。

第二步:选取多个表格
成功连接后,Excel会弹出一个“导航器”窗口,这个窗口会列出该数据库中所有可供选择的表格和视图,这里就是实现“选中多个”的关键步骤:

Excel怎么选中多个数据库中的数据进行合并?

  • 单选:直接点击您想要的表格名称。
  • 多选:按住键盘上的Ctrl键,然后用鼠标逐个点击您需要选取的所有表格,被选中的表格名称会高亮显示。

第三步:合并表格
选中多个表格后,直接点击“加载”会将它们作为独立的表格加载到Excel中,但这并未实现整合,更高效的方式是先进行合并:

  1. 在“导航器”窗口中,先不要点击“加载”,而是点击右下角的“转换数据”按钮,这会打开Power Query编辑器,您会看到左侧的“查询”窗格中,列出了您刚刚选择的所有表格。
  2. 在Power Query编辑器中,选择其中一个作为主表(订单表”)。
  3. 点击顶部菜单栏的“主页”选项卡,然后找到并点击“合并查询”。
  4. 在弹出的“合并”对话框中:
    • 上方的下拉菜单已默认显示您的主表(订单表)。
    • 在下方的下拉菜单中,选择您要合并的第二个表(客户信息表”)。
    • 在两个表格的预览窗口中,分别点击用于关联的列(客户ID”列),被选中的列会变成黄色。
    • 在“联接种类”中,选择适合您需求的合并方式,最常用的是“左外部”,它会保留主表的所有行,并匹配合并表中的信息。
  5. 点击“确定”,Power Query会创建一个新的合并查询,其中包含了来自两个表格的数据,您可以展开新增的列(通常以第二个表的名称命名),选择需要显示的字段。

第四步:加载到Excel
完成数据清洗和转换后,点击Power Query编辑器左上角的“关闭并上载”按钮,合并后的完整数据集就会被加载到新的工作表中。


从多个不同数据源中选取并整合数据

有时,数据来源更加复杂,比如销售数据在SQL数据库,而产品信息在另一个Excel工作簿中,Power Query同样能胜任。

  1. 分别建立连接:按照上述场景一的方法,先连接并获取第一个数据源(如SQL数据库)的数据,在“导航器”窗口,选择表格后点击“转换数据”,进入Power Query编辑器,这个查询已经建立,无需关闭编辑器,直接点击“主页” > “新建源” > “文件” > “从Excel工作簿”,找到并加载第二个数据源(产品信息Excel文件)。
  2. 使用“合并查询”功能:在Power Query编辑器的“查询”窗格中,您会看到两个或更多的查询,选择主查询(如SQL的销售数据),然后点击“合并查询”,在合并对话框中,下方的下拉菜单里,您会发现除了当前表之外,还列出了其他已加载的查询(如产品信息表),选择它作为第二个表,并设置好关联列和联接种类,即可完成跨数据源的合并。
  3. 加载到Excel:同样通过“关闭并上载”将整合后的数据加载到工作表。

下表小编总结了不同联接种类的用途,方便您根据业务逻辑选择:

Excel怎么选中多个数据库中的数据进行合并?

联接种类 描述 典型应用场景
左外部 保留第一个表的所有行,匹配第二个表的行 查看所有订单及其对应的客户信息,即使某些订单没有客户记录
内部 只保留两个表中都存在的匹配行 只分析有明确产品信息的销售记录
完全外部 保留两个表的所有行 获取完整的客户和订单列表,无论它们是否能匹配
左反 只保留第一个表中在第二个表没有匹配的行 找出从未下过订单的客户
右反 只保留第二个表中在第一个表没有匹配的行 找出从未被销售过的产品

相关问答 FAQs

如果我的数据库类型(如MySQL)在“获取数据”列表中没有直接列出,该怎么办?
解答:Excel的“获取数据”支持通过通用的连接器连接到更广泛的数据库,您可以尝试使用“自数据库” > “自ODBC”或“自OLEDB”,这需要您在操作系统中预先配置好对应数据库的ODBC驱动程序或OLE DB提供程序,配置完成后,您就可以通过这些通用连接器输入连接字符串来访问几乎所有的主流数据库。

在Power Query中,“合并查询”和“追加查询”有什么区别?
解答:这是一个非常重要的概念。

  • 合并查询:是横向扩展数据,相当于SQL中的JOIN操作,它会根据一个或多个共同的列,将一个表的列添加到另一个表的右侧,用于在同一行中展示不同来源但相关的信息。
  • 追加查询:是纵向扩展数据,相当于SQL中的UNION操作,它会将一个表的所有行追加到另一个表的下方,用于合并结构完全相同的表格,比如将一季度的销售数据和二季度的销售数据合并成一个年度数据表,合并是“增加列”,追加是“增加行”。

【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!

(0)
热舞的头像热舞
上一篇 2025-10-23 11:33
下一篇 2025-10-23 11:34

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

广告合作

QQ:14239236

在线咨询: QQ交谈

邮件:asy@cxas.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信