oracle数据库获取最大值和最小值

在使用oracle数据库的过程中,遇到了要取最大值和最小值的问题,就是对成绩取最高分和最低分。百度了一下,不是很理解思路,可能是我刚接触oracle的原因,测试了几次以后,知道了获取最大值和最小值的思路。

首先,字段类型要是number类,我用varchar比较的是错误数据,因为赶时间就没有深入研究,以后再研究。

取最大值的sql

思路:内部的sql是先对成绩进行降序排序,这样最大值就在第一行了,之后利用外部的(rownum<=1)将第一行的数据获取到,就完成了对最大值的筛选

SELECT 成绩 FROM (SELECT 成绩 FROM 成绩表 WHERE 筛选语句 ORDER BY 成绩 desc) WHERE rownum<=1

取最小值的sql

思路:同理,里边的sql是对成绩进行升序排序,这样最小值就在第一行了,之后利用外部的(rownum<=1)将第一行的数据获取到,就完成了对最小值的筛选

SELECT 成绩 FROM (SELECT 成绩 FROM 成绩表 WHERE 筛选语句 ORDER BY 成绩 asc) WHERE rownum<=1

希望能帮到你一点

更多推荐

oracle数据库获取最大值和最小值