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. element-UI——el-table添加序号

    转载自:https://www.cnblogs.com/langxiyu/p/10641060.html Part.1 示例 当我们想在 el-table 中添加序号列时,如下: <el-tab ...

  2. 【架构设计】Android:配置式金字塔架构

    最近做一个项目,在项目搭建之前,花了些许时间去思考一下如何搭建一个合适的架构.一开始的构思是希望能合理的把应用的各部分进行分离,使其像金字塔一样从上往下,下层为上层提供功能. 在平常项目中,总是有很多 ...

  3. Hadoop分布式文件系统HDFS的工作原理

    Hadoop分布式文件系统(HDFS)是一种被设计成适合运行在通用硬件上的分布式文件系统.HDFS是一个高度容错性的系统,适合部署在廉价的机器上.它能提供高吞吐量的数据访问,非常适合大规模数据集上的应 ...

  4. Web API学习笔记(Python实现)

    参考指南: Web API入门指南 http://www.cnblogs.com/guyun/p/4589115.html 用Python写一个简单的Web框架 http://www.cnblogs. ...

  5. Fiddler抓取https请求 & Fiddler抓包工具常用功能详解

    Fiddler抓取https请求 & Fiddler抓包工具常用功能详解   先来看一个小故事: 小T在测试APP时,打开某个页面展示异常,于是就跑到客户端开发小A那里说:“你这个页面做的有问 ...

  6. HeadFirstPython学习笔记——OSError: [WinError 10013] 以一种访问权限不允许的方式做了一个访问套接字的尝试。

    1.文件构成如下 2.运行服务器时报错 OSError: [WinError 10013] 以一种访问权限不允许的方式做了一个访问套接字的尝试. 解决方法:更换端口 3.Python的CGI跟踪术 在 ...

  7. elementUi中的计数器ele-mumber中的change事件传参及事件调用

    业务场景是需要在点击业务工作量的时候设置任务工作量这一项的评分不能大于任务质量及任务时限的权重之和除以二 上代码 JS逻辑代码 因出现弹出层提示后设置输入框的值如果大于sum的值,设置输入的值为sum ...

  8. springmvc请求参数异常统一处理

    1.ExceptionHandlerController package com.oy.controller; import java.text.MessageFormat; import org.s ...

  9. qtp type和set方法的区别

    type模拟键盘输入,是一个字符一个字符的输入. set是整个输入框一起置值. 例如:winedit中输入a后,再用type输入b,结果就是ab 如果用set输入a后,再用set输入b,结果就是b. ...

  10. Firebug: 已拦截跨源请求:同源策略禁止读取位于XXX的远程资源。(原因:CORS 头缺少 'Access-Control-Allow-

    第一种,就是在被请求的程序中添加HTTP头,即CORS跨域(跨域资源共享,Cross-Origin Resource Sharing) 如: Response.Headers.Add("Ac ...