powerdesigner导出表结构到excel_Excel+SQL 的另类应用

前言

因为工作原因,最近经常会给运营人员导出一些报表数据,所以常常跟 Excel 数据打交道。处理的多了,久而久之,发现 Excel 本身也可以做一些高级复杂的数据处理。

比如,根据业务需要,需同时导出相关业务的多张报表,而这些基础数据会存放到不同的数据库及数据表中,所以导致数据难以查询,分组,合并。

根据以往经验,我们一般选择把几个不同数据库的数据都导出到同一个库中,方便我们进行连表查询,得到想要的数据。

然而把多个数据库中的数据导出,再导到同一个库的操作非常繁琐,复杂。

所以,在这里给大家分享另一种思路来处理这些麻烦的数据:使用 Excel 。

使用 Excel 怎么处理这些复杂的数据呢? 万变不离其宗,处理这些数据,依然会使用到我们熟悉的SQL,对,你没有看错,就是在 Excel 中执行SQL。

5bc46a5881a86f6f1bfc7640157a0b33.png

接下来,举个栗子,来具体展示一下,在 Excel 中如何使用SQL处理多个表中数据。

场景

假设我们有一个用户中心子系统,该系统会记录用户的每次登录,退出记录到日志库logDB的access_log表中,同时用户信息保存在userDB的user_info表中。

b28a3f1b29bf9e52e461b414a9c78e71.png

userDB的user_info表结构

526796c1547d6ef77d600287182b65ab.png

logDB的access_log表结构

现在要求导出“张三,李四,王五3个用户的所有登录登出记录”。

首先,我们将张三,李四,王五的用户信息导出到excel:user_info.xlsx 中。如图:

a59a4baf92bd03a4fd0086f86c99550b.png

user_info.xlsx

然后,将 张三,李四,王五对应的登录记录导出到 excel : access_log.xlsx中。如图:

0dfaa332a51b7f5050e443b9a838eb18.png

access_log.xlsx

接下来我们就开始使用Excel对 user_info.xlsx , access_log.xlsx 2个表进行SQL查询。

第三步,点击Excel 菜单栏:数据 -> 来自其他源 -> 来自Microsoft Query,如图:

da838d678d59ab6460e13b9ca34c2caf.png

然后选择数据源中的"Excel File* ",并点击确定按钮。

a4b53572142abdf236d3c6e0c82ae7d0.png

接着,选择Excel文件所在位置,并点击确定。

59f734e125bb4e8ad17e36d063db72ac.png

然后,点击"选项",勾选"系统表",再点击确定。

31e1342786980af29d389dd4923c2259.png
75fb447be12e6c403deec284cadbe3e4.png

点击确定后,我们就能在"可用的表和列"中看到我们的Excel Sheet页,选择需要的列加入到右侧,点击下一步

58cc0ad39605cff8906af72425e7ac84.png

这时,可以看到2个表及表中的数据。然后连接2个表中相同的列,如下图所示:

c5ec721dcbbed5c829df353fc2eaa1be.png

点击下图所示按钮"SQL",弹出SQL编辑框,这样就可以随意修改SQL来查询我们需要的数据。

a7d8c1dd393b2e5f5627b4fe74b75957.png

最后,点击下图按钮,选择保存到"新工作表",就得到我们最终想要的数据。

1c0bd0a36ac759c603663836c37d51ad.png
6c1dbc2fb8571e93df6657f4bdb016cb.png

结语

以上示例只是简单的演示了一下Excel的SQL查询功能,实际工作中遇到的报表会比这复杂的多,将会更好的体现该功能的强大。

这种使用Excel + SQL处理数据的方式可以弥补一些无法使用数据库直接操作数据的特殊情况。

虽然这不是处理数据的最优方式,但也可以作为一种备选,以应对一些紧急数据情况。

以上分享提供一种新的思路来处理数据,大家如果有别的思路或想法,可以在下方留言,一起交流学习。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值