oracle group表达式,oracle条件表达式与分组

前言

表中的数据

20180801132920846179.png

20180801132920958484.png

1条件表达式

1.1数据库通用条件表达式

语法:

case 列

when 列值1 then  显示值1

when 列值2 then  显示值2

when 列值3 then  显示值3

else

默认值

end

例子:

表的数据

20180801132921356921.png

SELECT deptno,case deptno

WHEN 10 THEN ‘十‘

WHEN 20 THEN ‘二十‘

WHEN 30 THEN ‘三十‘

WHEN 40 THEN ‘四十‘

ELSE ‘零‘

END "中文数值"

FROM dept;

20180801132921490711.png

1.2oracle特有条件表达式

decode(列,列值1,显示值1,列值2,显示值2,默认值)

SELECT deptno,

DECODE(deptno,10,‘十‘,20,‘二十‘,30,‘三十‘,40,‘四十‘,‘五十‘)

FROM emp;

20180801132921614734.png

2.分组

分组关键字group by ,过滤条件having

SELECT deptno,COUNT(ename) FROM emp GROUP BY deptno

20180801132921701648.png

加上having过滤条件

SELECT deptno,COUNT(ename) FROM emp GROUP BY deptno HAVING deptno >10;

20180801132921784656.png

where和having的区别:

where后面不能接聚合函数,可以接单行函数

having实在group by之后执行,可以接聚合函数


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部