多语言展示
当前在线:409今日阅读:82今日分享:48

利用SQL语句合并不同工作表中的各条记录

利用SQL语句合并不同工作表中的各条数据,excel提供了通过导入外部数据、导入数据的方式,通过SQL语句,编辑OLD DBC查询来查询、筛选excel工作表中的数据,下面我将通过一个实例为大家讲解。
工具/原料

excel

方法/步骤
1

如果想合并(将每个表中的每条记录统一放置在一个表中)三张表中的各条记录,首先需要按住shift键,然后鼠标左键点按sheet1标签,然后点按sheet3标签,此时sheet1、sheet2、sheet3标签反白显示,界面上方显示工作组字样,如下图所示

2

观察三张表的表头不是标准的二维表表头,需要删除多余的部分,首选用鼠标左键点按行标签1并向下拖动到行标签2的位置,此时第一行和第二行处于选中状态,选中区域的颜色会变深,鼠标悬停在选中区域上,然后点按鼠标右键,在弹出的快捷菜单中点按删除命令,之后这三个表格就变成了标准的二维表格式,按ctrl+s保存工作簿,然后关闭该工作簿。

3

关闭刚才保存好的工作簿之后,新建一个工作簿,然后点按菜单栏上数据菜单下的导入外部数据,导入数据,也可以按住alt键,然后连续点击三次键盘上的d键,也可以,此时会弹出选取数据源对话框,点按右侧的桌面找到存放修改过表头的工作薄的位置,找到该工作薄,然后双击该工作薄或者直接点按打开。

4

在弹出的选取表格对话框中直接点按确定即可,在接下来弹出的导入数据对话框中点按编辑查询命令按钮。

5

此时会弹出OLE DB对话框,在命令文本对话框中输入SQL查询语句即可通过SQL这种数据库结构化查询语句将三个表中的数据合并起来。

6

在命令文本对话框中输入如下语句:select * from [sheet1$] union all select * from [sheet2$] union all select * from [sheet3$]

7

在接下来弹出的刷新数据对话框中点按确定即可,然后在返回的导入数据对话框中点按属性按钮,在弹出的外部区域数据属性对话框中勾选,打开工作薄时自动刷新命令,

8

然后点击确定,返回导入数据对话框,最后点按确定。

9

点按确定之后如果弹出对话框提示定义了过多的字段,如果有这种提示出现,需要检查一下刚才保存的工作薄,将工作薄中sheet1到sheet3除了存储数据的区域之外的行列均删除,字段过多一般指列过多,删除多余的列即可,microsoft query 可以一次查询最多256个字段。

10

删除多余的列后再次按照上述步骤操作一遍可以得到合并三个表的结果如下第二图中所示。

注意事项
1

[sheet1$] 表示sheet1工作表 一定要加上$并且用中括号括起来

2

*代表表中的所有数据

推荐信息