oracle group表达式,oracle条件表达式与分组
前言
表中的数据


1条件表达式
1.1数据库通用条件表达式
语法:
case 列
when 列值1 then 显示值1
when 列值2 then 显示值2
when 列值3 then 显示值3
else
默认值
end
例子:
表的数据

SELECT deptno,case deptno
WHEN 10 THEN ‘十‘
WHEN 20 THEN ‘二十‘
WHEN 30 THEN ‘三十‘
WHEN 40 THEN ‘四十‘
ELSE ‘零‘
END "中文数值"
FROM dept;

1.2oracle特有条件表达式
decode(列,列值1,显示值1,列值2,显示值2,默认值)
SELECT deptno,
DECODE(deptno,10,‘十‘,20,‘二十‘,30,‘三十‘,40,‘四十‘,‘五十‘)
FROM emp;

2.分组
分组关键字group by ,过滤条件having
SELECT deptno,COUNT(ename) FROM emp GROUP BY deptno

加上having过滤条件
SELECT deptno,COUNT(ename) FROM emp GROUP BY deptno HAVING deptno >10;

where和having的区别:
where后面不能接聚合函数,可以接单行函数
having实在group by之后执行,可以接聚合函数
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
