第八章 SQL聚合函数 MAX
文章目录
- 第八章 SQL聚合函数 MAX
- 大纲
- 参数
- 描述
- 数据值
- 当前事务期间所做的更改
- 示例
第八章 SQL聚合函数 MAX
返回指定列中最大数据值的聚合函数。
大纲
MAX([ALL | DISTINCT [BY(col-list)]] expression [%FOREACH(col-list)] [%AFTERHAVING])
参数
ALL
- 可选-将聚合函数应用于所有值。
ALL
对MAX
返回的值没有影响。
它提供了SQL-92
兼容性。DISTINCT
- 可选-一个DISTINCT
子句,指定考虑每个惟一值。
DISTINCT
对MAX
返回的值没有影响。
它提供了SQL-92
兼容性。expression
- 任何有效的表达式。
通常是包含要返回的最大值的值的列的名称。%FOREACH(col-list)
- 可选-列名或以逗号分隔的列名列表。%AFTERHAVING
- 可选-应用在HAVING
子句中的条件。
MAX
返回与表达式相同的数据类型。
描述
MAX
聚合函数返回表达式的最大值。
通常,表达式是查询返回的多行中字段的名称(或包含一个或多个字段名称的表达式)。
MAX
可以在引用表或视图的SELECT
查询或子查询中使用。
MAX
可以在SELECT
列表或HAVING
子句中与普通字段值一起出现。
MAX
不能在WHERE
子句中使用。
MAX
不能在JOIN
的ON
子句中使用,除非SELECT
是子查询。
与大多数其他聚合函数一样,MAX
不能应用于流字段。
尝试这样做会产生一个SQLCODE -37
错误。
与大多数其他聚合函数不同,ALL
和DISTINCT
关键字,包括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
请注意,在比较之前,MIN
和MAX
会将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相关推荐
- SQL 聚合函数一定要跟group by以及NULL的关系的案例精讲
SQL 聚合函数与GROUP BY NULL的关系及ALL的使用说明 需求说明 有如下一道SQL题,网友咨询: 1 为啥正确答案是第二项? 2 聚合函数是否一定要跟GROUP BY PARTITION ...
- Maxcompute ODPS SQL 聚合函数
ODPS SQL 聚合函数 ODPS SQL 聚合函数 1.COUNT:用于计算记录数. SELECT COUNT(*) FROM table_name; --******************** ...
- 第九章 SQL聚合函数 MIN
文章目录 第九章 SQL聚合函数 MIN 大纲 参数 描述 数据值 在当前事务期间所做的更改 示例 第九章 SQL聚合函数 MIN 返回指定列中的最小数据值的聚合函数. 大纲 MIN([ALL | D ...
- 第三章 SQL聚合函数 COUNT(一)
文章目录 第三章 SQL聚合函数 COUNT(一) 大纲 参数 描述 没有行返回 流字段 第三章 SQL聚合函数 COUNT(一) 返回表或指定列中的行数的聚合函数. 大纲 COUNT(*)COUNT ...
- 第十二章 SQL聚合函数 VARIANCE, VAR_SAMP, VAR_POP
文章目录 第十二章 SQL聚合函数 VARIANCE, VAR_SAMP, VAR_POP 大纲 参数 描述 当前事务期间所做的更改 示例 第十二章 SQL聚合函数 VARIANCE, VAR_SAM ...
- 第五章 SQL聚合函数 %DLIST
文章目录 第五章 SQL聚合函数 %DLIST 大纲 参数 描述 %DLIST 和 %SelectMode %DLIST和ORDER BY 相关的聚合函数 示例 第五章 SQL聚合函数 %DLIST ...
- 第十三章 SQL聚合函数 XMLAGG
文章目录 第十三章 SQL聚合函数 XMLAGG 大纲 参数 描述 XML和XMLAGG XMLAGG和ORDER BY 相关聚合函数 示例 第十三章 SQL聚合函数 XMLAGG 一个聚合函数,它创 ...
- 第二章 SQL聚合函数 AVG
文章目录 第二章 SQL聚合函数 AVG 大纲 参数 描述 数据值 对单个值求平均值 优化 当前事务期间所做的更改 示例 第二章 SQL聚合函数 AVG 返回指定列值的平均值的聚合函数. 大纲 AVG ...
- 第七章 SQL聚合函数 LIST
文章目录 第七章 SQL聚合函数 LIST 大纲 参数 描述 包含逗号的数据值 LIST 和 %SelectMode LIST 和 ORDER BY 最大列表大小 相关的聚合函数 示例 第七章 SQL ...
最新文章
- 临时内核页表的建立过程
- 2021广西高考成绩几点可以查询,高考完多久分数能出来广西 2021年广西高考分数查询公布时间...
- java object save,通过ObjectOutputStream发送文件,然后将其保存在Java中?
- python适用场景_你真的了解Python吗?什么场景使用多线程,什么场景使用多进程?...
- sysbench 压测 详解
- 计算机什么存放bois程序,[硬件维护]问一个基础性的问题:BIOS程序到底存放在哪个芯片里?...
- 信息学奥赛一本通 1056:点和正方形的关系 | OpenJudge NOI 1.4 18
- Could not create the view An unexpected exception……的问题
- Postman的使用说明
- 公有云、私有云、混合云的区别比较
- Python Poetry管理包安装速度慢的解决办法
- Civil2019程序安装及注意事项
- c语言课程设计交通处罚单系统,交通处罚单管理系统课程设计.doc
- PDF文件太大如何变小?
- 深入理解dex文件结构
- 2021年中国机动车保有量及机动车污染物排放情况分析[图]
- 微信小程序|开发FAQ篇
- mongdb系列之最详细基础知识
- canvas教程11-渐变
- 区块链的命和血汗工厂的病
热门文章
- 【JavaScript高级05】JavaScript第二大神兽:闭包
- 深度学习代码入门test2_alexnet
- 白炽灯、日光灯和led灯的区别
- 公司内网批量安装python依赖包
- 百度指数数据抓取Python+selenuim+OpenCV(三)
- Android响应式编程RxAndroid(1):简单例程
- 概率质量(mass)函数和概率密度(density)函数区别
- 用Java实现windows系统声音输出设备的一键切换
- 关于新安装Eplan显示无法打开数据库的问题
- 融云首席科学家任杰:数字游民和意识体,疫情将如何影响人类社会进化