ORACLE的内置函数(NULL函数、集合函数)
1、NVL
语法:NVL(expr1,expr2)
注释:替换null的值,如果expr1为null,则返回expr2,否则返回expr1。该函数要求expr1与expr2的数据类型一致
例:SELECT NVL(1,2),NVL(NULL,2) FROM DUAL;

2、COALESCE
语法:COALESCE(erpr)
注释:返回列表中第一个不为null的表达式,如果都为null,则返回null
例:SELECT COALESCE(NULL,-100,100,NULL) FROM DUAL;

1、AVG
语法:AVG([DISTINCT|ALL]EXPR)
注释:求平均值函数。DISTINCT 去除重复值、ALL表示所有值,如果不填默认为ALL
例:SELECT AVG(MATHEMATICS),AVG(DISTINCT MATHEMATICS) FROM Student_Information

2、COUNT
语法:COUNT([*|DISTINCT|ALL]EXPR)
注释:求记录数函数。*表示记录所有记录、distinct表示去除重复的记录、all表示所有数,默认选项、expr 要计算的对象。通常是表的列
例:查询Student_Information表中所有记录
SELECT count(1) FROM Student_Information
查询Student_Information一共有多少班级,配个组查询GROUP BY
STUDENTCLASS


3、MAX
语法:MAX([DISTINCT|ALL]EXPR)
注释:返回最大值函数。DISTINCT表示去重,默认all代表所有
例:返回各个班级语文成绩最高的分数
SELECT STUDENTCLASS,MAX(CHINESE) FROM Student_Information GROUP BY STUDENTCLASS

4、MIN
语法:MIN([DISTINCT|ALL]EXPR)
注释:与max函数相反,返回最小值函数。DISTINCT表示去重,默认all代表所有
例:返回各个班级语文成绩最底的分数
SELECT STUDENTCLASS,MIN(CHINESE) FROM Student_Information GROUP BY STUDENTCLASS

5、SUM
语法:SUM([DISTINCT|ALL]EXPR)
注释:求和函数。DISTINCT表示去重,默认all代表所有
例:返回各个班级语文总分数
SELECT STUDENTCLASS,SUM(CHINESE) FROM Student_Information GROUP BY STUDENTCLASS

1、USER 函数
参数无,返回当前登陆的账号名
SELECT USER FROM DUAL;

2、DECODE(表达式匹配函数)
语法:DECODE(expr,search,result[,search1,result1][,default])
注释:该函数是个强大的函数,类似于多个if else组合。意思是当expr符合search时,则返回result,如果result又是一个表达式时,有类似上一判断步骤
例子:将Student_Information 的语文成绩划分为良好(80-100),及格(60-80),不及格(<60)三个层次显示
SELECT STUDENTNAME as 姓名,CHINESE as 成绩
,DECODE(SIGN(CHINESE-80),1,'优秀',0,'优秀',-1,DECODE(SIGN(CHINESE-60),1,'及格',0,'及格',-1,'不及格')) as 评优
FROM Student_Information
