在Excel的“数据”选项卡下|excel中如何从数据库获取和转换数据

在Excel的“数据”选项卡下 , 有一个与PowerQuery结合的“获取和转换数据”功能区 , 在之前的两篇文章中 , 我们介绍了通过“来自表格/区域”和“自文件”的“从工作簿”两个按钮 , 将其他位置的数据拉取至指定的位置 , 并且通过PowerQuery编辑器对数据进行了一定的处理 。 本期我们继续介绍如何从数据库获取和转换数据 。
我们需要将来自某数据库的原始数据拉取至下图所示的Excel的Staff工作表中 , 作为“StaffList”数据以便我们使用和分析 。
在Excel的“数据”选项卡下|excel中如何从数据库获取和转换数据
文章图片
一般来说 , 从数据库获取和转换数据的步骤如下:
1.从数据库下载所需的数据;
2.将下载后的数据导入Excel;
3.在Excel中进行清理 。
这一过程实际上是耗时的 , 且可能会不断重复的过程 。 不过 , 当我们引入PowerQuery的功能后 , 我们可以直接与数据库连接 , 并且在PowerQuery编辑器转换数据 , 即对数据进行处理 , 而我们只需在Excel中通过“刷新”按钮 , 一键得到更新后的数据 。
我们继续本期的“StaffList”案例 , 在Staff工作表中 , 点击“数据”选项卡下的“获取数据” , 选择“自数据库”下的“从MicrosoftAccess数据库” 。 (当然 , 这里还有其他数据库的选项 , 如SQLServer等 。 )
在Excel的“数据”选项卡下|excel中如何从数据库获取和转换数据
文章图片
根据对话框的引导 , 找到原始数据所在的数据库文件 。 如果是连接其他的数据库(SQLServer或Oracle , 可能会需要验证或登录数据的信息 。 )
在Excel的“数据”选项卡下|excel中如何从数据库获取和转换数据
文章图片
点击“导入”后 , 我们会来到“导航器”界面 , 在此我们可以看到数据库中的数据表格列表 , 此例中仅有一个 , 我们选择数据库中的“Staff”表格即可预览其数据 。
在Excel的“数据”选项卡下|excel中如何从数据库获取和转换数据
文章图片
因为我们要对此数据进行处理 , 所以点击“转换数据” , 进入PowerQuery编辑器 。
在Excel的“数据”选项卡下|excel中如何从数据库获取和转换数据
文章图片
首先 , 我们要处理的“StartDate”这一列数据 , 当前该列数据中同时包含了日期和时间 , 而我们只需保留日期即可:选中此列数据 , 点击“主页”选项卡下的“数据类型” , 在其下拉菜单中 , 选择“日期” 。
在Excel的“数据”选项卡下|excel中如何从数据库获取和转换数据
文章图片
其次 , 我们要将“FirstName”和“LastName”两列数据合并成一列 , 方便我们在进行数据查询和做报表时更好操作:选中“FirstName”列 , 按住Shift键 , 再选中“LastName”列 , 点击“转换”选项卡下的“合并列”按钮 。
在Excel的“数据”选项卡下|excel中如何从数据库获取和转换数据
文章图片
在Excel的“数据”选项卡下|excel中如何从数据库获取和转换数据】在“合并列”的对话框中 , 我们需要确定是否需要分隔符 , 此例中我们选择的是“空格” , 并且根据实际情况 , 指定“新列名称” 。
在Excel的“数据”选项卡下|excel中如何从数据库获取和转换数据
文章图片
点击“确定”后 , 两列会合并成一列“StaffName” 。 当数据库中的Name数据更新后 , 我们通过刷新按钮 , 这些更新后的名字会自动并到这一列“StaffName”中 。
在Excel的“数据”选项卡下|excel中如何从数据库获取和转换数据
文章图片
完成数据的处理后 , 我们点击“主页”选项卡的“关闭并上载至”按钮 , 在“导入数据”时 , 选择指定的位置 。