如何对 Excel 中的数据使用 SQL 查询
Excel 提供了 Filter、透视表、Subtotal 等内置查询功能,但这些界面操作有时反而比较繁琐,也不够灵活。对于某些有 SQL 经验的人来讲,如果能直接用 SQL 查询数据就方便多了。
比如下面这张销售订单表:
A | B | C | D | E | |
1 | sales 2009-2013 | ||||
2 | OrderID | Client | SellerId | Amount | OrderDate |
3 | 26 | TAS | 1 | 2142.4 | 2009-08-05 |
4 | 33 | DSGC | 1 | 613.2 | 2009-08-14 |
5 | 84 | GC | 1 | 88.5 | 2009-10-16 |
6 | 133 | HU | 1 | 1419.8 | 2010-12-12 |
7 | 32 | JFS | 3 | 468 | 2009-08-13 |
8 | 39 | NR | 3 | 3016 | 2010-08-21 |
9 | 43 | KT | 3 | 2169 | 2009-08-27 |
10 | 71 | JFE | 3 | 240.4 | 2010-10-01 |
11 | 99 | RA | 3 | 1731.2 | 2009-11-05 |
12 | … | … | 4 | 4031 | 2010-07-29 |
目标:求2009 年每个销售员(C 列)的订单数,结果贴在 G 到 H 列。如下图:
A | B | C | D | E | F | G | H | |
1 | sales 2009-2013 | |||||||
2 | OrderID | Client | SellerId | Amount | OrderDate | sellerid | orderNum | |
3 | 26 | TAS | 1 | 2142.4 | 2009-08-05 | 1 | 3 | |
4 | 33 | DSGC | 1 | 613.2 | 2009-08-14 | 3 | 3 | |
5 | 84 | GC | 1 | 88.5 | 2009-10-16 | … | … | |
6 | 133 | HU | 1 | 1419.8 | 2010-12-12 | |||
7 | 32 | JFS | 3 | 468 | 2009-08-13 | |||
8 | 39 | NR | 3 | 3016 | 2010-08-21 | |||
9 | 43 | KT | 3 | 2169 | 2009-08-27 | |||
10 | 71 | JFE | 3 | 240.4 | 2010-10-01 | |||
11 | 99 | RA | 3 | 1731.2 | 2009-11-05 | |||
12 | … | … | 4 | 4031 | 2010-07-29 |
如果用SQL 就是一句:select sellerid,count(1) orderNum from table_name where year(OrderDate)=2009 group by sellerid,非常简单。
下面我们来看如何在Excel 里使用 SQL 查询计算数据。
1. 打开集算器
2. 用Excel 打开需要计算的文件,比如上例。
3. 选中A2:E12 区域,按 ctrl+C 复制到剪贴板。
4. 切换到集算器,选中A1 格,注意要让光标落到 A1 的编辑状态中,用 ctrl+V,将数据粘贴进 A1 格。
5. 在集算器的A2 格中填入 SQL 语句:$select sellerid,count(1) orderNum from {A1.import@t()} where year(OrderDate)=2009 group by sellerid,注意前面要有一个 $ 符号,这是集算器的约定,from 的内容要写成 {A1.import@t()},表示将 A1 里的字符串转为表格数据以便执行 SQL,@t 表示首行为列名。
6. 按F9 执行,然后点击 A2,右侧可以看到执行结果。
7. 按住shift(以便带上列名),在右侧点击 "copy data" 按钮,将 A2 的计算结果复制到剪贴板。
8. 在Excel 的 G2 单元格,用 ctrl+V 粘贴结果。
OK,大功告成。
再举一个关联计算的例子。比如某Excel 有orders和employee这两个sheet,现在要将两个sheet关联在一起。
前两步见上例。
3. 选中orders sheet 中的列名和数据,Ctrl+C 复制到剪贴板,Ctrl+V 粘贴到 esProc 的 A1 单元格。
4. 类似地,将employee sheet 复制粘贴到 esProc 的 B1 单元格。
5. 在A2 格执行 SQL:$select o.OrderID, o.OrderDate,o.Amount, e.Name, e.Dept
from {A1.import@t()} o left join {B1.import@t()} e on o.sellerID=e.empID
后续步骤见上例。
集算器能支持 SQL92 标准的大部分语法和函数,包括嵌套的子查询,甚至 WITH 都可以。
如何对 Excel 中的数据使用 SQL 查询相关推荐
- 福州传一卓越编程培训第二天2023 05 23 数据库sqlite增删改查,excel中的数据输出为sql语句
数据库基本概念 数据库即 存储数据的系统(DBS database sysytem) 数据库系统 数据库的管理系统软件 DBMS manager 数据文件 db文件 存储数 ...
- 将excel中是数据导入数据库
2019独角兽企业重金招聘Python工程师标准>>> 将excel中是数据导入数据库 1.利用excel生成sql语句: 列如: 1).insert: =CONCATENATE(& ...
- word录入表单数据 java 导入系统,java导入excel | 怎么把excel中的数据批量导入到word中的表格中...
用javascript怎么实现把excel中的数据批量导入到数据库表中 这个js不能直接实现吧 我们程序用到 先读取excel内容转换成数组 然后放到页面上 再提交表单 储存 MySql如何批量添加数 ...
- 使用Python将Excel中的数据导入到MySQL
使用Python将Excel中的数据导入到MySQL 工具 Python 2.7 xlrd MySQLdb 安装 Python 对于不同的系统安装方式不同,Windows平台有exe安装包,Ubunt ...
- python把数据写入excel_Python向excel中写入数据的方法
Python向excel中写入数据的方法 最近做了一项工作需要把处理的数据写入到Excel表格中进行保存,所以在此就简单介绍使用Python如何把数据保存到excel表格中. 数据导入之前需要安装 x ...
- 将Excel中的数据导入到MySql数据库中
如何导入到MySql中 将数据导入MySql库中,比较直接的方式就是将数据生成相应的SQL语句来执行.我们的思路是将Excel中的数据拼接成相应的SQL语句并保存在**.sql**文件中提供给MySq ...
- excel文件导入hive乱码_hive 从Excel中导入数据
拿到Excel表后将数据保留,其他的乱七八糟都删掉,然后另存为txt格式的文本,用nodepad++将文本转换为UTF-8编码,此处命名为cityprovince.txt 将cityprovince. ...
- 将excel中的数据导入数据库
下图为java导入数据库中表的结构,其中id为自增,导入excel时excel中的数据不需要写id列,数据库会自动生成只需要写后面相对应的数据. 下表为excel导入数据库时的结构,列必须与数据库相对 ...
- 把excel中的数据粘贴到oracle
需要把excel中的数据导入到oracle,一般常用的就是先把表结构给建了,然后在plsql中select * from biao for update,点击那个小锁,选中第一列全部,然后从excel ...
- 文本、Excel、Access数据导入SQL Server2000技巧
昨天参加一个项目的维护,因为各种原因,数据在不同服务器上不一致,所以需要重新将数据库清空一次,并将整理后的数据重新导入.需导入的数据源为文本文件,记录以行存储,","逗号分割各字段 ...
最新文章
- 第一个kbmmw for Linux 服务器
- JQuery 表单校验插件 validate 使用纪录
- python画笑脸图案-如何让这些代码中的一个在窗口中绘制不同大小的笑脸?
- 供SAPI中TTS功能用使的Win8.1语言包安装
- 设置Dialog全屏显示(转)
- 计算机应用基础考证理论知识,《计算机应用基础》考试大纲
- 小甲鱼c++学习视频之运算符重载
- [BUUCTF-pwn]——bbys_tu_2016
- JavaScript简介-1
- 基于 LiteSpeed 的一站式 PHP 网站解决方案 LLStack V1.0-1 发布
- 网络知识:详解各种路由器组网方法!
- 【无码专区2】序列划分(数学)
- 洛谷P2822 组合数问题
- java web 请求跟踪_java web 项目跟踪用户操作
- bluetooth射频已关闭请打开bluetooth射频_【05/25 - 公告】微软已推送 Build 18362.145 (KB4497935) 版本...
- 微软 SQL Server 2016 SP1 开发者版入驻 Windows 容器
- c可视化编程学习感悟_编程课程心得体会范文【五篇】
- Java中级软件工程师应该具备的知识点
- 主要几个浏览器的内核是什么
- 演讲技巧_成功进行技术演讲的11个重要技巧
热门文章
- linux鼠标手势,Vivaldi 1.2 发布,定制鼠标手势
- Android ViewGroup中addView方法使用
- Java类集框架——List接口
- ‘The client noticed that the server is not a supported distribution of Elasticsearch‘ 报错及解决办法
- APP开发项目团队成员要求及职责
- 2022年诺贝尔物理学奖背后的故事——贝尔不等式诞生之后
- 禁用笔记本电脑自带键盘
- 中职计算机教学随笔800字,职高教育工作随笔
- 小伙长期熬夜加班致“斑秃” IT业人士最易脱发
- 有人能帮忙下载下吗 新手没积分 感激不尽