Excel中怎么执行SQL查询函数
本篇文章给大家分享的是有关Excel 中怎么执行SQL查询函数,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
创新互联公司是一家集网站建设,灵川企业网站建设,灵川品牌网站建设,网站定制,灵川网站建设报价,网络营销,网络优化,灵川网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
数据素材
数据素材为从GitHub上获取关于COVID-19数据集。如果大家需要素材,请留言回复“ETSQL”获取练习素材。
这里面要用到一个函数ETSQL,它是EFunction内置的函数。
数据素材包括全球和国内的数据
案例1:数据匹配
“国家”Sheet表格内对应的是,各个省份每天累计数据和新增数据。假如需要提取出来上海每天的数据信息。则SQL语句为:
select * from [国家$] as a where a.省份='上海市'
对于学习过SQL语句的朋友来说,Excel内置引擎,SQL语句和其他关系数据库的查询语法基本相同。对于未接触SQL语句的朋友来说,可以这样简单理解。
select 关键词是必须的,表示要查询一个信息关键词,每个语句必须有的。
from 关键词也是必须的,表示从什么地方查询,Excel表格表示从“国家”这个Sheet之中查询。
where 关键词也是必须的,表示是查询的筛选条件,它后面跟着的就是筛选条件,案例之中,要求“国家”Sheet表之中,省份等于“上海市”,如果有多个条件使用关键词and 或者or进行连接。
通过以上语句,就能够将上海每天的数据全部提取出来。
从“国家”表格之中提取出上海所有信息
如果要提取出来上海市,2020-40-20日之后所有的数据,则上述SQL语句只需要变为
select * from [国家$] as a where a.省份='上海市' and a.日期>43941。
对于熟悉MySQL或者MsSQL的朋友来说,Excel之中没有“时间”类型数据,Excel之中只有数值类型数据,Excel之中是以数字表示时间的,43941就对应2020-40-20这一天。当然在实际应用过程之中,可以使用公式进行拼接SQL语句,Excel会自动将日期转化为数字类型数据处理的。
案例之中,就是将B1和F1单元格内的数据,进行拼接到A1单元格之中,Excel自动生成SQL完整语句。
SQL拼接
如果学习好了SQL查询语句后,再配合ETSQL函数,Excel之中所有匹配函数就可以说拜拜了。当然SQL语句编写起来没有专用的函数方便。但SQL很适合用来进行复杂数据匹配工作,这点VLOOKUP,match等函数,是万万没有这个技能的。所以说没有最好的工具,只有适合的工具。
案例2:数据聚合(求和,平均、计数)
如果要统计上海市,每天新增人数的累加和-累计确诊人数时,这个时候,就可以应用到SQL另外一个强大的功能,数据聚合,这个功能很像Excel自带的透视表功能,这相当于透视表函数化了,我们把Excel语句写好了,只需要F9刷新数据就OK了。基本语句为
select sum(当日新增) from [国家$] as a where a.省份='上海市'
上述语句通过SQL引擎的sum函数(需要注意这个sum和Excel函数SUM的区别),统计“当日新增”这个字段数据的和,条件是省份为上海市。
如果说我要统计上海市每天的平均新增人数,该怎么写:
select avg(当日新增) from [国家$] as a where a.省份='上海市'
只需要把sum替换为avg求平均函数就OK了。如果要统计上海市有多少天有新增确诊记录时,则条件SQL语句为:
select count(当日新增) from [国家$] as a where a.省份='上海市' and a.当日新增>0
count函数为计数统计函数,同时添加了另外一个条件,就是添加了当日新增人数大于“0”值的数据。
以上介绍的聚合,是通过where条件来了,如果说我要统计全国所有省份总确诊人数,总不能连续写30多个SQL语句吧!
正常的SQL语句为:select a.省份,sum(a.当日新增) from [国家$] as a group by a.省份
这个使用到的是group by 关键词。这个特点是不是很像Excel的透视表。group by后面相当于透视表“行”条件,select 后面相当于透视表的“列”条件,sum或者count或者avg相当于透视表的“值”
统计累计确诊人数
以上统计出来的结果是杂乱无章的,这个时候稍加改动就可以排序了
select a.省份,sum(a.当日新增) from [国家$] as a group by a.省份 order by sum(a.当日新增) desc
排好序的统计结果
order by 关键词后就是排序条件,将统计出来的 sum(a.当日新增) 进行排序,desc表示降序。如果要升序的话,可以省略或者写上asc。为了增加SQL语句可读性,建议你写上。
以上就是Excel 中怎么执行SQL查询函数,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注创新互联行业资讯频道。
当前标题:Excel中怎么执行SQL查询函数
网站URL:http://myzitong.com/article/iehidd.html