Case有2中格式:简单Case函数和Case搜索函数。

简单函数:case sex when '1' then '男' when '2' then ‘女’ else  '其它' end;(sex是列)
 
搜索函数:case when sex='1' then '男 ' when sex='2' then '女'
 
实际使用先创建一个表看看

create table t_test(
id number primary key,
matchdate varchar2(12),
resul varchar2(5)
)

 插入简单的数据:

insert into t_test values(1,'2015-02-04','胜');
insert into t_test values(2,'2015-02-04','负');
insert into t_test values(3,'2015-02-04','胜');
insert into t_test values(4,'2015-02-07','负');
insert into t_test values(5,'2015-02-07','胜');
insert into t_test values(6,'2015-02-07','负');

 select * from  t_test 执行的结果

下面使用case函数:

select id,MATCHDATE,case when resul='胜' then 'ok' when resul='负' then 'xx' end 成绩 from t_test;

select id,MATCHDATE,case resul when '胜' then 'ok' when '负' then 'xx' else 'rr' end 成绩 from t_test;

这里的2个是一样的结果;

结果:

可以看到原先的值已经发生改变。

case  when ... then ...      -- 查询 当resul的值为选定值是 then 可做更替,而后的when条件针对多个不同值的改变;

统计胜 与负 数量:
select MATCHDATE as 日期,
count(case when RESUL='胜' then RESUL end) as 胜,
count(case when RESUL='负' then RESUL end) as 负
from t_test group by matchdate

再搞个例子

create table Table_Country(
name_try varchar2(10),
sex number,
popu number
)
insert into Table_Country values('中国',1,260);
insert into Table_Country values('中国',2,220);
insert into Table_Country values('美国',1,29);
insert into Table_Country values('美国',2,30);
insert into Table_Country values('加拿大',1,120);
insert into Table_Country values('加拿大',2,56);
insert into Table_Country values('英国',1,50);
insert into Table_Country values('英国',2,60);

select name_try,
sum(case sex when 1 then popu end),
sum(case sex when 2 then popu end)
from Table_Country group by name_try

根据性别分组展示:

case 函数的简单使用记录下的更多相关文章

  1. Linux下getopt()函数的简单使用

    最近在弄Linux C编程,本科的时候没好好学啊,希望学弟学妹们引以为鉴. 好了,虽然啰嗦了点,但确实是忠告.步入正题: 我们的主角----getopt()函数. 英雄不问出处,getopt()函数的 ...

  2. Case when 的用法,简单Case函数

    Case when 的用法,简单Case函数 简单CASE表达式,使用表达式确定返回值. 语法: CASE search_expression WHEN expression1 THEN result ...

  3. [转载]Linux下getopt()函数的简单使用

    转载源地址:https://www.cnblogs.com/qingergege/p/5914218.html 1.getopt()函数的出处就是unistd.h头文件(哈哈),写代码的时候千万不要忘 ...

  4. SQL语句中case函数

    case函数,严格的意义上来讲case函数已经试流程控制语句了,不是简单意义上的函数,不过为了方便,很多人将case函数称为流程控制函数. case函数的一般有两种用法:1.case expressi ...

  5. Swift学习之函数和简单地控件的创建

     今天还是重复昨天做的事情--敲代码,但唯一的不同就是所学的知识不同了,我们又进一步往深得层次学习了,感觉越来越有意思了,虽然临近结束了看着大家积极性越来越低了,但是我知道我不能这样,我要比别人付出的 ...

  6. ORACLE CASE函数 .

    Case具有两种格式.简单Case函数和Case搜索函数. --简单Case函数 CASE sex WHEN '1' THEN '男' WHEN '2' THEN '女' ELSE '其他' END ...

  7. 记录下Webapi签名机制

    首先,写这篇文章的原因是因为最近某一个项目中的接口被人为调用了,导致了数据库数据被串改.虽然是内部人无意点的,但还是引起了我的担忧,所有整理了下关于Webapi的相关签名机制. 一.我们在开发接口时, ...

  8. ffplay.c函数结构简单分析(画图)

    最近重温了一下FFplay的源代码.FFplay是FFmpeg项目提供的播放器示例.尽管FFplay只是一个简单的播放器示例,它的源代码的量也是不少的.之前看代码,主要是集中于某一个"点&q ...

  9. SQL Server -- 回忆笔记(四):case函数,索引,子查询,分页查询,视图,存储过程

    SQL Server知识点回忆篇(四):case函数,索引,子查询,分页查询,视图,存储过程 1. CASE函数(相当于C#中的Switch) then '未成年人' else '成年人' end f ...

随机推荐

  1. Oracle 动态sql

    静态SQL是前置编译绑定,动态SQL是后期执行时才编译绑定. 场景: 动态SQL适用于表名及查询字段名未知的情况.在已知查询字段名及表名的情况下,使用动态SQL(字符串拼接方式)会增加硬解析的开销,在 ...

  2. 关于隐式创建vue实例实现简化弹出框组件显示步骤

    我们在使用vue写alert组件的时候,经常是定义了一个alert.vue,然后引入alert.vue,然后配置参数等等,非常繁琐,那有没有一种方式可以像window.alert("内容&q ...

  3. 什么是LDAP?

    LDAP是轻量目录访问协议,英文全称是Lightweight Directory Access Protocol,一般都简称为LDAP.它是基于X.500标准的,但是简单多了并且可以根据需要定制.与X ...

  4. LCSS最长公共子序列算法

    0.论文基本介绍以及相关内容 分析移动用户位置的相似性,提取移动用户的相似路径在出行路径预测.兴趣区域发现.轨迹聚类.个性化路径推荐等领域具有广泛的应用. 重点:利用移动用户定位数据找到合适轨迹的表示 ...

  5. MariaDB主从复制,redis发布订阅,持久化,以及主从同步

      一. MariaDB主从复制 mysql基本操作 1 连接数据库 mysql -u root -p -h 127.0.0.1 mysql -u root -p -h 192.168.12.60 2 ...

  6. 空list赋值

    list=[] i =0 list[i] =1 Traceback (most recent call last): File "D:\ProgramData\Anaconda3\lib\s ...

  7. 理解不为人知的ClassLoader

    JAVA类装载方式,有两种: 1.隐式装载, 程序在运行过程中当碰到通过new 等方式生成对象时,隐式调用类装载器加载对应的类到jvm中. 2.显式装载, 通过class.forname()等方法,显 ...

  8. STL 小白学习(8) set 二叉树

    #include <iostream> using namespace std; #include <set> void printSet(set<int> s) ...

  9. vue中computed、metfods、watch的区别

    一.computed和methods 我们可以将同一函数定义为一个 method 或者一个计算属性.对于最终的结果,两种方式确实是相同的. 不同的是computed计算属性是基于它们的依赖进行缓存的. ...

  10. php 面向对象二

    多态: 多态就是多种形态:多态分为方法重写和方法重载,但是php不支持方法重载 重写: 子类和父类的方法名必须一致,严格标准要求参数必须一致,但是参数可以不一致 子类中覆盖的方法不能比父类的方法访问权 ...