百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术分类 > 正文

Excel中使用SQL查询语句,让你工作中的数据分析...

ztj100 2024-10-28 21:13 40 浏览 0 评论

在我们进行数据处理的过程中,我们常常会调用一些外部数据,此时使用SQL查询语句是非常方便的,今天我们就来给大家详细讲解一下SQL查询语句中用得最多的SELECT语句的一些基本用法。

1.SELECT 语法

SELECT [ALL|DISTINCT|DISTINCTROW|TOP]

{|talbe.|[table.]field1[AS alias1][,[table.]field2[AS alias2][,…]]}

FROM table_source

[ WHERE search_condition ]

[ GROUP BY group_by_expression ]

[ HAVING search_condition ]

[ ORDER BY order_expression [ ASC | DESC ] ]

[LIMIT [offset,] rows | rows OFFSET offset]

DISTINCT 去除重复值

DISTINCTROW忽略基于整个重复记录的数据,而不仅仅是重复字段。

执行步骤:

1.先从from字句一个表或多个表创建工作表

2.将where条件应用于1)的工作表,保留满足条件的行

3.GroupBy 将2)的结果分成多个组

4.Having 将条件应用于3)组合的条件过滤,只保留符合要求的组。

5.Order By对结果进行排序。

6. LIMIT限制查询的条数

2.FROM子句

FROM子句是SELECT语句中必须要有的一部分,它指定了查询所需要的数据源的名称。

语法:FROM table_source。

参数解释:table_source可以是表、视图等等,一个语句中最多可以使用256个表源。如果使用的表过多,查询性能是会受到影响的,所以不建议使用太多表源。

请看下面的示例:

Select distinct 供货商信息.单位名称,供货商信息.地址 from 供货商信息

3.WHERE子句

在查询数据的时候,我们常常是希望查询出满足一定条件的数据,而非数据表中的所有数据,这个时候我们就可以使用WHERE子句来实现。数据库系统处理该语句时,按行为单位,逐个检查每个行是否满足条件,将不满足条件的行筛选掉。

语法:WHERE search_conditions

参数解释:search_conditions为用户所选所需要查询数据行的条件,即查询返回行记录的满足条件。

3.1 比较运算符

3.2 逻辑运算符

3.3 字符匹配符

在WHERE子句中 使用字符匹配符LIKE或NOT LIKE 可以把表达式与字符串进行比较,从而实现对字符串的模糊查询。

语法:WHERE expression [NOT] LIKE 'string'

参数解释:[NOT]为可选项,'string'表示进行比较的字符串。WHERE子句实现对字符串的模糊匹配,进行模糊匹配是在string字符串中使用通配符。

示例:Select * from 入库数据 where 产品名称 like '% a %'

4.ORDER BY 子句

有些时候,我们希望查询出来的结果是按照某个顺序排列的,这个时候就可以使用ORDER BY子句对生成的结果集进行排序。

语法:ORDER BY order_experssion[ASC | DESC]

参数解释:order_experssion表示用于排序的列或列名及表达式。当有多个排序列时,每个排序列用逗号隔开,而且列后都可以跟一个排序要求。ASC—–升序排序(默认值),DESC—降序排序。

示例:Select * from 入库数据 order by 产品名称 desc

5.GROUP BY 子句

在查询中,有时候我们需要对数据进行分组(类似于Excel中的分类汇总的功能),此时就可以使用GROUP BY 子句。

语法:GROUP BY group_by_expression[ WITH ROLLUP|CUBE ]

参数解释:group_by_expression表示分组所依据的列,ROLLUP表示只返回第一个分组条件指定的列的统计行,若改变列的顺序就会使返回的结果行数据发生变化。CUBE是ROLLUP的扩展,表示除了返回由GROUP BY子句指定的列外,还返回按组统计的行。GROUP BY 子句通常与统计函数联合使用。常见的统计函数如下表:

示例:Select count(*)from 入库数据 group by 产品名称

6.HAVING

HAVING子句的用法类似WHERE子句,它指定了组或集合的搜索条件。HAVING子句通常与GROUP BY子句一起使用。

语法:HAVING search_conditions

参数解释:search_conditions为查询所需的条件,即返回查询结果的满足条件。在使用GROUP BY 子句时,HAVING子句将限定整个GROUP BY子句创建的组。其具体规则如下:

1.如果指定了GROUP BY 子句,则HAVING 子句的查询条件应用于GROUP BY子句创建的组

2.如果指定了WHERE子句而没有指定GROUP BY子句,则HAVING子句的查询条件将应用于WHERE子句的输出结果集

3. 如果既没有指定WHERE子句又没有指定GROUP BY子句,则HAVING子句的查询条件将用于FROM子句的输出结果集

7.limit子句

其作用是用于限制查询结果的条数。常常用于实现分页查询。

语法:[LIMIT [offset,] rows | rows OFFSET offset]

参数解释:有两个参数,第一个是偏移量,第二个是数目。

Acces及Excel的数据库不支持该语句。

示例:Select * from 入库数据 limit 2,2

相关推荐

这个 JavaScript Api 已被废弃!请慎用!

在开发过程中,我们可能会不自觉地使用一些已经被标记为废弃的JavaScriptAPI。这些...

JavaScript中10个“过时”的API,你的代码里还在用吗?

JavaScript作为一门不断发展的语言,其API也在持续进化。新的、更安全、更高效的API不断涌现,而一些旧的API则因为各种原因(如安全问题、性能瓶颈、设计缺陷或有了更好的替代品)被标记为“废...

几大开源免费的 JavaScript 富文本编辑器测评

MarkDown编辑器用的时间长了,发现发现富文本编辑器用起来是真的舒服。...

比较好的网页里面的 html 编辑器 推荐

如果您正在寻找嵌入到网页中的HTML编辑器,以便用户可以直接在网页上编辑HTML内容,以下是几个备受推荐的:CKEditor:CKEditor是一个功能强大的、开源的富文本编辑器,可以嵌入到...

Luckysheet 实现excel多人在线协同编辑

前言前些天看到Luckysheet支持协同编辑Excel,正符合我们协同项目的一部分,故而想进一步完善协同文章,但是遇到了一下困难,特此做声明哈,若侵权,请联系我删除文章!若侵犯版权、个人隐私,请联系...

从 Element UI 源码的构建流程来看前端 UI 库设计

作者:前端森林转发链接:https://mp.weixin.qq.com/s/ziDMLDJcvx07aM6xoEyWHQ引言...

手把手教你如何用 Decorator 装饰你的 Typescript?「实践」

作者:Nealyang转发连接:https://mp.weixin.qq.com/s/PFgc8xD7gT40-9qXNTpk7A...

推荐五个优秀的富文本编辑器

富文本编辑器是一种可嵌入浏览器网页中,所见即所得的文本编辑器。对于许多从事前端开发的小伙伴来说并不算陌生,它的应用场景非常广泛,平时发个评论、写篇博客文章等都能见到它的身影。...

基于vue + element的后台管理系统解决方案

作者:林鑫转发链接:https://github.com/lin-xin前言该方案作为一套多功能的后台框架模板,适用于绝大部分的后台管理系统(WebManagementSystem)开发。基于v...

开源富文本编辑器Quill 2.0重磅发布

开源富文本编辑器Quill正式发布2.0版本。官方TypeScript声明...

Python之Web开发框架学习 Django-表单处理

在Django中创建表单实际上类似于创建模型。同样,我们只需要从Django类继承,则类属性将是表单字段。让我们在myapp文件夹中添加一个forms.py文件以包含我们的应用程序表单。我们将创建一个...

Django测试入门:打造坚实代码基础的钥匙

这一篇说一下django框架的自动化测试,...

Django ORM vs SQLAlchemy:到底谁更香?从入门到上头的选择指南

阅读文章前辛苦您点下“关注”,方便讨论和分享,为了回馈您的支持,我将每日更新优质内容。...

超详细的Django 框架介绍,它来了!

时光荏苒,一晃小编的Tornado框架系列也结束了。这个框架虽然没有之前的FastAPI高流量,但是,它也是小编的心血呀。总共16篇博文,从入门到进阶,包含了框架的方方面面。虽然小编有些方面介绍得不是...

20《Nginx 入门教程》使用 Nginx 部署 Python 项目

今天的目标是完成一个PythonWeb项目的线上部署,我们使用最新的Django项目搭建一个简易的Web工程,然后基于Nginx服务部署该PythonWeb项目。1.前期准备...

取消回复欢迎 发表评论: