加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

oracle条件表达式与分组

发布时间:2020-12-12 13:28:08 所属栏目:百科 来源:网络整理
导读:前言 表中的数据 ? ? 1条件表达式 1.1数据库通用条件表达式 语法: ?case 列 ?????? when 列值1 then? 显示值1 ?????? when 列值2 then? 显示值2 ?????? when 列值3 then? 显示值3 ???? else ?????? 默认值 ???? end?? 例子: 表的数据 ? SELECT deptno,case

前言

表中的数据

?

?

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之后执行,可以接聚合函数

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读