文章目录

  • 第八章 SQL聚合函数 MAX
  • 大纲
  • 参数
  • 描述
  • 数据值
  • 当前事务期间所做的更改
  • 示例

第八章 SQL聚合函数 MAX

返回指定列中最大数据值的聚合函数。

大纲

MAX([ALL | DISTINCT [BY(col-list)]] expression [%FOREACH(col-list)] [%AFTERHAVING])

参数

  • ALL - 可选-将聚合函数应用于所有值。
    ALLMAX返回的值没有影响。
    它提供了SQL-92兼容性。
  • DISTINCT - 可选-一个DISTINCT子句,指定考虑每个惟一值。
    DISTINCTMAX返回的值没有影响。
    它提供了SQL-92兼容性。
  • expression - 任何有效的表达式。
    通常是包含要返回的最大值的值的列的名称。
  • %FOREACH(col-list) - 可选-列名或以逗号分隔的列名列表。
  • %AFTERHAVING - 可选-应用在HAVING子句中的条件。

MAX返回与表达式相同的数据类型。

描述

MAX聚合函数返回表达式的最大值。
通常,表达式是查询返回的多行中字段的名称(或包含一个或多个字段名称的表达式)。

MAX可以在引用表或视图的SELECT查询或子查询中使用。
MAX可以在SELECT列表或HAVING子句中与普通字段值一起出现。

MAX不能在WHERE子句中使用。
MAX不能在JOINON子句中使用,除非SELECT是子查询。

与大多数其他聚合函数一样,MAX不能应用于流字段。
尝试这样做会产生一个SQLCODE -37错误。

与大多数其他聚合函数不同,ALLDISTINCT关键字,包括MAX(DISTINCT BY(col2) col1),在MAX中不执行任何操作。
它们是为了SQL-92的兼容性而提供的。

数据值

MAX使用的指定字段可以是数字或非数字。
对于数字数据类型字段,maximum被定义为数值中的最大值;
因此-3大于-7
对于非数值型数据类型字段,maximum定义为字符串排序序列中的最大值;
因此'-7''-3'高。

一个空字符串 ('')值被视为CHAR(0)

谓词使用为字段定义的排序规则类型。
默认情况下,字符串数据类型字段是用SQLUPPER排序规则定义的,它不区分大小写。

当字段定义的排序类型为SQLUPPER时,MAX返回全大写字母的字符串。
因此,SELECT MAX(Name)返回'ZWIG',而不管数据的原始字母大小写。
但是因为比较是使用大写排序法执行的,所以HAVING Name=MAX(Name)子句选择的是Name值为 'Zwig', 'ZWIG', 'zwig'的行。

对于数值,返回的刻度与表达式刻度相同。

在派生MAX聚合函数值时,数据字段中的NULL值将被忽略。
如果查询没有返回行,或者返回的所有行的数据字段值为NULL,则MAX返回NULL

当前事务期间所做的更改

与所有聚合函数一样,MAX总是返回数据的当前状态,包括未提交的更改,而不考虑当前事务的隔离级别。

示例

以下查询返回Sample.Employee数据库中的最高(最高)工资:

SELECT '$' || MAX(Salary) As TopSalaryFROM Sample.Employee

下面的查询为每个州返回一行,每个州至少包含一名薪水小于25,000美元的员工。使用%AFTERHAVING关键字,每行返回小于25,000美元的最高员工工资。每行还返回该状态下所有员工的最低工资和最高工资:

SELECT Home_State,'$' || MAX(Salary %AFTERHAVING) AS MaxSalaryBelow25K,'$' || MIN(Salary) AS MinSalary,'$' || MAX(Salary) AS MaxSalaryFROM Sample.EmployeeGROUP BY Home_StateHAVING Salary < 25000ORDER BY Home_State

以下查询返回在Sample.Employee数据库中找到的排序规则序列中最小(最小)和最高(最大)的名称:

SELECT Name,MIN(Name),MAX(Name)FROM Sample.Employee

请注意,在比较之前,MINMAX会将NAME值转换为大写。

以下查询返回Sample.Employee数据库中Home_State‘VT’的员工的最高(最高)工资:

SELECT MAX(Salary)FROM Sample.EmployeeWHERE Home_State = 'VT'

以下查询返回Sample.Employee数据库中每个Home_State的员工数量和最高(最高)员工工资:

SELECT Home_State, COUNT(Home_State) As NumEmployees, MAX(Salary) As TopSalaryFROM Sample.EmployeeGROUP BY Home_StateORDER BY TopSalary

第八章 SQL聚合函数 MAX相关推荐

  1. SQL 聚合函数一定要跟group by以及NULL的关系的案例精讲

    SQL 聚合函数与GROUP BY NULL的关系及ALL的使用说明 需求说明 有如下一道SQL题,网友咨询: 1 为啥正确答案是第二项? 2 聚合函数是否一定要跟GROUP BY PARTITION ...

  2. Maxcompute ODPS SQL 聚合函数

    ODPS SQL 聚合函数 ODPS SQL 聚合函数 1.COUNT:用于计算记录数. SELECT COUNT(*) FROM table_name; --******************** ...

  3. 第九章 SQL聚合函数 MIN

    文章目录 第九章 SQL聚合函数 MIN 大纲 参数 描述 数据值 在当前事务期间所做的更改 示例 第九章 SQL聚合函数 MIN 返回指定列中的最小数据值的聚合函数. 大纲 MIN([ALL | D ...

  4. 第三章 SQL聚合函数 COUNT(一)

    文章目录 第三章 SQL聚合函数 COUNT(一) 大纲 参数 描述 没有行返回 流字段 第三章 SQL聚合函数 COUNT(一) 返回表或指定列中的行数的聚合函数. 大纲 COUNT(*)COUNT ...

  5. 第十二章 SQL聚合函数 VARIANCE, VAR_SAMP, VAR_POP

    文章目录 第十二章 SQL聚合函数 VARIANCE, VAR_SAMP, VAR_POP 大纲 参数 描述 当前事务期间所做的更改 示例 第十二章 SQL聚合函数 VARIANCE, VAR_SAM ...

  6. 第五章 SQL聚合函数 %DLIST

    文章目录 第五章 SQL聚合函数 %DLIST 大纲 参数 描述 %DLIST 和 %SelectMode %DLIST和ORDER BY 相关的聚合函数 示例 第五章 SQL聚合函数 %DLIST ...

  7. 第十三章 SQL聚合函数 XMLAGG

    文章目录 第十三章 SQL聚合函数 XMLAGG 大纲 参数 描述 XML和XMLAGG XMLAGG和ORDER BY 相关聚合函数 示例 第十三章 SQL聚合函数 XMLAGG 一个聚合函数,它创 ...

  8. 第二章 SQL聚合函数 AVG

    文章目录 第二章 SQL聚合函数 AVG 大纲 参数 描述 数据值 对单个值求平均值 优化 当前事务期间所做的更改 示例 第二章 SQL聚合函数 AVG 返回指定列值的平均值的聚合函数. 大纲 AVG ...

  9. 第七章 SQL聚合函数 LIST

    文章目录 第七章 SQL聚合函数 LIST 大纲 参数 描述 包含逗号的数据值 LIST 和 %SelectMode LIST 和 ORDER BY 最大列表大小 相关的聚合函数 示例 第七章 SQL ...

最新文章

  1. python数值运算实例_Python矩阵常见运算操作实例总结
  2. 26岁创造UNIX,退休后却成为一名飞行员,这位编程界大佬不走寻常路
  3. 每个程序员都应该了解的内存知识
  4. 左神算法:最大值减去最小值小于或等于num的子数组的数量(Java版)
  5. eclipse git:Transport Error: Cannot get remote repository refs. invalid advertisement of
  6. 如何更改指定用户在windows系统目录的权限
  7. ubuntu18.04下安装Anaconda及numpy、matplotlib
  8. 贴出一个php的批量搜索吧
  9. 【深度学习系列】卷积神经网络CNN原理详解(一)——基本原理(1)
  10. 基于Docker Compose搭建的Mysql8.0主从复制(1主3从,多主机)
  11. 6位大师浅谈未来三年大数据的发展
  12. win7为什么打开桌面上的计算机很卡很慢,如何解决win7系统电脑反应慢
  13. SQL Server根据地图坐标经纬度计算距离
  14. Invest模型-碳储量计算
  15. t分布(Student t distribution)——正态分布的小样本抽样分布
  16. Elite Software DuctSize v6.01.224 1CD(风管测算软件)
  17. Java Seckill Module:seckill
  18. python画椭圆形_Python3 tkinter基础 Canvas create_rectangle 画虚边的矩形 create_oval 画椭圆形 圆形...
  19. 腾讯广告算法大赛2020-广告产品种类单特征-入门级
  20. HTTP 422 状态码

热门文章

  1. IsNaN函数的使用
  2. 微信朋友圈怎样推广,一张思维导图告诉大家
  3. css如何设置首行文字缩进?
  4. 怎样快速判断代理ip是否可用
  5. GoldenGate安装说明
  6. 面试之-3.0概率质量函数,概率密度函数,概率分布函数
  7. 基于 element-plus 封装一个依赖 json 动态渲染的查询控件
  8. svn提交代码特别慢——idea日常忽略文件不提交
  9. 房市云里雾里,58、我爱我家抱团取暖还是各怀鬼胎
  10. 谷歌浏览器安装Vue的调试开发工具扩展vue-devtools