【问题标题】:SQL Inner Join possible between Microsoft Excel and ODBC data source?Microsoft Excel 和 ODBC 数据源之间可以使用 SQL 内连接吗?
【发布时间】:2020-09-07 17:38:46
【问题描述】:

我在 Excel 的表格 1 上有一个 A 列,其中包含 50 个城市名称 (A1:A50),以及一个 ODBC 数据源,其中包含世界各地城市的人口在一个表中(数十万条记录,没有拉取选项全部输入到 Excel 中)。我想在工作表 1 和城市名称匹配的 ODBC 数据源之间进行内部连接(这是 ODBC 表的键)。使用 50 个城市名称及其人口执行后,内部连接生成的新表可以在表 2 中打开。

我曾尝试在 Excel 中使用“其他源/ODBC”外部数据功能,但到目前为止只能从 ODBC 源中提取数据。我一直无法弄清楚 Excel 工作表和 ODBC 源之间的内部联接。能做到吗?

【问题讨论】:

    标签: sql excel odbc


    【解决方案1】:

    简短的回答是否定的。

    更长的答案是您需要将 Excel 文件中的数据插入 SQL Server 数据库才能执行连接。有几种工具可以帮助您做到这一点。数据在 SQL Server 中后,您可以按照您想要的任何方式加入和提取数据。

    【讨论】:

    • 在其他工具中,我会将 Excel 数据加载到数据库中的临时表中并加入其中,或者将 Excel 数据作为参数列表传递给 WHERE 子句。在 Excel 中是否可以使用这些选项中的任何一个?
    • @Violet:有点。请记住,in-list 不能包含 OP 中指示的数十万个元素。临时表可以工作,但您必须向其中插入数据。
    【解决方案2】:

    Excel 的“强大查询”工具可以链接两个表并构建允许数据合并。 PQ 可以打开比 Excel 通常可以处理的更大的数据集。网上有教程详细解释了这一点。简要大纲是:

    1. 打开电子表格,建立连接
    2. 打开 ODBC 数据源,建立连接。
    3. 对这两个项目使用合并工具,指定要链接的字段(您的城市数据)并指定您想要的联接(左联接应该适合您)。

    https://www.youtube.com/watch?v=712mV9jwMLo

    https://www.ablebits.com/office-addins-blog/2018/11/14/excel-join-tables-power-query/

    (PQ 可作为 2010 和 2013 Excel 的插件,但内置于 2016,但可能需要启用)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-08
      • 1970-01-01
      • 2011-06-18
      • 1970-01-01
      • 2018-02-25
      相关资源
      最近更新 更多