高级查询

作者: 想吃热干面了 | 来源:发表于2019-02-26 23:06 被阅读18次

分组函数

1 MIN :最小值
2 MAX :最大值
3 SUM : 求和
4 AVG : 平均值 保留小数点后四位 默认int类型
5 COUNT : 计算

使用方法:


image.png

MIN和MAX函数:返回每组的最小或最大值

可用于任何数据类型


image.png

应用:


image.png

SUM和AVG函数:返回每组的总和或平均值

只对数值类型的列或表达式操作


image.png

应用:


image.png

COUNT函数:查询每组记录条数

image.png

消除空值:


image.png
分组函数中空值的处理

出了count(*)外,其他分组函数都会忽略列中的空值

在分组函数中使用IS NULL函数

IS NULL函数:可以使分组函数强制包含含有空值的记录

创建数据组

使用GROUP BY 子句创建数据组:

image.png
image.png
注意:查询的列 和 分组根据的列可不一致

排除组结果(为分组添加限制条件)

注意:不能用where子句限制组,限制组要用过having子句


image.png

例:


image.png

SELECT 语句执行过程

1.from子句找到需要查询的表
2.where子句进行非分组函数筛选判断
3.group by 子句完成分组操作
4.having 子句完成分组函数筛选判断
5.select子句选择显示的列或表达式及组函数
6.order by子句排序

子查询

子查询:一个查询语句的结果作为另一个查询语句的条件(内部查询)
子查询可以嵌于以下sql子句中:
where子句 having子句 from子句
例:


image.png

使用指导:
1.要用括号括起来
2.要放在比较运算符右边
3.单行子查询使用单行运算符
4.多行子查询使用多行运算符
类型:
1.单行子查询
2.多行子查询
3.多列子查询

单行子查询:子查询只返回一行一列

使用单行运算符:


image.png

多行子查询:子查询返回记录的条数,可以使一条或多条

多行运算符:IN ANY ALL

IN:判断是否与子查询中的任意一个返回值相同
image.png
ANY:比较有一个满足条件即可

<ANY:小于子查询中任意一个就可以
.>ANY:大于子查询中任意一个就可以
=ANY:相当于IN
例:


image.png
ALL:每一行都要满足条件

<ALL:小于所有行
.>ALL:大于所有行
=ALL:无意义


子查询中的空值

image.png

FROM子句中的子查询

查询获取的数据可以看作是一个新的表,要设置别名


image.png

相关文章

  • 高级查询

    SQL语句的强化求所有电脑产品的平均价格,并且保留两位小数:select round(avg(price),2) ...

  • 高级查询

    分组函数 使用方法: MIN和MAX函数:返回每组的最小或最大值 可用于任何数据类型 应用: SUM和AVG函数:...

  • 高级查询

    -5个分组函数 where 中不可以有别名,where中不能有分组函数-- 组后条件 select 语句执行过程 ...

  • 高级查询

    数据库示例: 学生信息表student 成绩表score 一、子查询 一个内层查询语句(select-from-w...

  • 高级查询

    分页和过滤查询 流程图 : 前面我们已经讲过分页查询了 , 接下来我们讲讲 过滤查询 . 思路 : 从后台开始写 ...

  • GreenDao集成教程(三) DB高级查询

    高级查询 DEMO入口

  • SQL查询_高级查询

    SQL查询_高级查询 一、子查询 子查询出现的位置一般为条件语句,oracle会先执行子查询,再执行父查询,子查询...

  • spring date mongo mongotemplate使

    Spring数据MongoDB三:基本文档查询(查询,基本查询)(一) MongoDB高级查询[聚合] sprin...

  • Hive高级查询

    Hive高级查询 查询操作group by、Order by 、Join 、distribute by 、Sort...

  • elasticsearch高级查询

    elasticsearch7.8.0高级查询 数据准备 查询所有 匹配查询 字段匹配查询 分词查找 关键字精确查询...

网友评论

    本文标题:高级查询

    本文链接:https://www.haomeiwen.com/subject/qtkayqtx.html