Oracle函数-组函数
admin
2023-04-29 19:04:28
0

Oracle函数-组函数

函数的分类

单行函数:一个input对应一个output,input和output存在一一对应的关系 如lower

组函数:多个input,但是只对应一个output。如 sum()

------------------------------------------------------------------------------------


1、组函数(多行函数)默认情况下组函数   

     SQL>select min(sal),max(sal),sum(sal),avg(sal) from emp where empno=10;  


2、max min :统计日期数字和字符串

     SQL>select min(hiredate),max(hiredate) from emp;  

     SQL>select min(ename),max(ename) from emp;


3、count:用于结果集进行一个计数

①count(*):统计结果集为空的行

     SQL>select count(*) from emp;  

②count(xxx):不统计结果集为空的行(只统计满足表达式的非空行)

     SQL>select count(comm) from emp where deptno=30; 

     SQL>select count(comm) from emp;  

③count(distinct xxx):distinct-剔除重复的行

     SQL>select count(distinct deptno) from emp;


4、avg(xxx)求平均值

     SQL>select avg(sal) from emp;

     SQL>select avg(comm) from emp;  

     SQL>select avg(nvl(comm,0)) from emp; 统计所有人的平均奖金



5、group by:分组

①单列分组

     SQL>select avg(sal) from emp group by deptno;

     结果集没意义:需要在前面加上列名 

     SQL>select deptno,avg(sal) from emp group by deptno;

     SQL>select deptno,ename,avg(sal) from emp group by deptno;


②多列分组

先对部门分组,在对相同部门下的相同工作进行分组,在求平均值?

     SQL>select deptno,job,avg(sal) from emp group by deptno,job;

错误示例:

     SQL>select deptno,avg(sal) from emp;    


6、having:过滤

①分组之后还是想进行过滤,想要求出部门平均工资大于xxx的

     SQL>select deptno,avg(sal) from emp group by deptno;


    DEPTNO   AVG(SAL)

---------- ----------

        30 1566.66667

        20       2175

        10 2916.66667


7、条件表达式

①case

select ename,job,

  case

        when deptno=10 then sal

        when deptno=20 then 2*sal

        when deptno=30 then 3*sal

        else sal/2

  end new_sal

from emp;


②decode

select ename,job,decode(deptno,20,2*sal) from emp;

select ename,job,decode(deptno,20,2*sal,sal) from emp;

select ename,job,decode(deptno,10,sal,20,2*sal,30,3*sal,sal/2) from emp;


③只显示10号部门的工资,不是10号部门的用0表示

     SQL>select case when deptno=10 then sal else 0 endfrom emp;

     SQL>select deptno,avg(sal) from emp group by deptno having avg(sal)>2000;




相关内容

热门资讯

豫篮联赛:赛场劲吹“文旅风” 汉服小姐姐在看台上翩翩起舞。胡斌 摄洛阳队球员上篮。胡斌 摄“五一”小长假后,豫篮联赛伴随着初夏的热...
凡星闪耀丨《武林外传》中小米扮... 张清(右)在免费餐厅为大家服务。张清在《武林外传》中饰演“丐帮弟子”小米(右)。在郑州的城市烟火气中...
卫华:做走向世界的“起重管家” 卫华集团智能生产车间。常晶晶 摄作为全省服务业大会的参会企业,河南卫华重型机械股份有限公司(以下简称...
在加快国际消费中心城市建设中彰... “服务业是推动经济高质量发展的重要引擎,也是强化国家中心城市核心竞争力的重要支柱。”5月12日,省委...
坚定不移沿着习近平总书记指引的... 壮美的郑州黄河文化公园。河南日报资料图片 河南日报全媒体记者 聂冬晗 摄来郑州,到哪里慢赏大河风光?...
双庆同辉映初心——黄河科技学院... 2026年5月12日,黄河科技学院附属医院迎来开诊七周年纪念日,恰逢第115个国际护士节。当天,医院...
驻美大使谢锋回应中美热点问题 据中国驻美国大使馆5月13日消息,5月5日,中国驻美国大使谢锋就美国总统特朗普访华和中美关系接受美国...
邻妹妹帮办 | 占地1.2万㎡... “杞县有个婚礼庄园,6 大主题特色宴会厅,可同时容纳2000人聚餐,在未变更工业用地用途、未经消防验...
国台办:和平统一后,台湾同胞民... 5月13日,国务院台办举行例行新闻发布会。有记者问,国务院台办发言人在之前发布会上已分别阐释了和平统...
美国16位商业巨头与特朗普一同... 白宫11日公布了将随特朗普一同访华的商界领袖名单。据多家美媒报道,总共将有16位美国商界代表来到北京...