首页 > 数据库 >oracle中if/else的三种实现方式详解

oracle中if/else的三种实现方式详解

时间:2023-04-13 11:04:13浏览次数:44  
标签:... END ELSE 详解 oracle else

oracle中if/else的三种实现方式详解

1、标准sql规范

1、单个IF

IF v=... THEN 
END IF;

2、IF ... ELSE

IF v=... THEN
ELSE
t....;
END IF;   

3、多个IF

IF v=... THEN
ELSIF v=... THEN 
t...;
END IFL

注意: 多个IF的是'ELSIF' 不是 ' ELSE IF'

2、decode函数

DECODE(VALUE,IF1,THEN1,IF2,THEN2,IF2,THEN2,..,ELSE)  

表示如果value等于if1时,DECODE函数的结果返回then1,...,如果不等于任何一个if值,则返回else。

3、case when

CASE WHERE v=... THEN 'vvvvv';
 WHERE v=... THEN 'ffff';
ELSE
 .....;
END AS '别名';

注意点:

1、以CASE开头,以END结尾

2、分支中WHEN 后跟条件,THEN为显示结果

3、ELSE 为除此之外的默认情况,类似于高级语言程序中switch case的default,可以不加

4、END 后跟别名

总结

以上所述是小编给大家介绍的oracle中if/else的三种实现方式,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对编程宝库网站的支持!

标签:...,END,ELSE,详解,oracle,else
From: https://www.cnblogs.com/alien365/p/17312661.html

相关文章

  • Oracle创建序列
    创建序列语法:CREATESEQUENCE序列名;--示例createsequenceSEQ_CX_TEXT_SEQ;----CreatesequencecreatesequenceSEQ_CX_TEXT_SEQminvalue1maxvalue9999999999999999999999999999startwith1incrementby1cache20;--如果指定cache,oracle预先在内存中放置......
  • XXL-JOB定时任务框架(Oracle定制版)
    特点xxl-job是一个轻量级、易扩展的分布式任务调度平台,能够快速开发和简单学习。开放源代码并被多家公司线上产品使用,开箱即用。尽管其确实非常好用,但我在工作中使用的是Oracle数据库,因为xxl-job是针对MySQL设计的,所以使用起来需要进行一些魔改。为了方便后人使用,我已经创建了许......
  • 2.1万字,30张图详解操作系统常见面试题(收藏版)
    耗时两周,新版的操作系统常见知识点/问题总结总算搞完了,手绘了30多张图。大家可以用来复习操作系统或者准备操作系统面试。对于大部分公司的面试来说基本够用了,不过,像腾讯、字节这种大厂的面试还是要适当深入一些。这篇文章总结了一些我觉得比较重要的操作系统相关的问题比如用......
  • AlertDialog(对话框)详解
    本节继续给大家带来是显示提示信息的第三个控件AlertDialog(对话框),同时它也是其他Dialog的的父类!比如ProgressDialog,TimePickerDialog等,而AlertDialog的父类是:Dialog!另外,不像前面学习的Toast和Notification,AlertDialog并不能直接new出来,如果你打开AlertDialog的源码,会发现构造方法......
  • JDBC详解(韩顺平教程)
    JDBC一、原理示意图二、前提步骤IDEA导入MySQL的jdbc驱动,并操作数据库-打点-博客园(cnblogs.com)三、JDBC编写步骤:用法1:packageHsp.JDBC;​importcom.mysql.jdbc.Driver;importjava.sql.Connection;importjava.sql.SQLException;importjava.sql.Statement;......
  • C# Byte数组转化String详解(c# byte转化为string)
    C#Byte数组转化String详解(c#byte转化为string)原文链接:https://www.zhiu.cn/148955.htmlC#编程过程中将Byte数组转化String是咱们常常碰到的问题,那么怎么处理C#Byte数组转化String呢?那么咱们来看看详细的涉及到的办法以及关于怎么处理C#Byte数组转化String的评论。FCL得许多......
  • JavaWeb之Servlet详解(以及浏览器调用 Servlet 流程分析图)
    Servlet1.什么是ServletServlet(java服务器小程序)他是由服务器端调用和执行的(一句话:是Tomcat解析和执行)他是用java语言编写的,本质就是Java类他是按照Servlet规范开发的(除了tomcat->Servletweblogic->Servlet)功能强大,可以完成几乎所有的网站功能2.开发......
  • VUE中的插槽使用详解
     <!--什么是插槽?  *插槽就是子组件中的提供给父组件使用的一个占位符,插槽显不显示、怎样显示是由父组件来控制的,而插槽在哪里显示就由子组件来进行控制。  一般用slot标签来表示插槽要渲染的位置,slot的用法可以分为三类,分别是默认插槽、具名插槽、作用域插槽 ......
  • python关于*args所能接收的参数、关于**kwargs所接收的参数详解
    1#!/usr/bin/envpython2#-*-coding:utf8-*-3#python-day32-20170110:456#关于*args所能接收的参数78#这种接收的是位置参数,可变长9deffunc1(*args):10print(args,type(args))1112#传入位置参数可以被args所接收,以元组的形式来保存......
  • 漏洞-Oracle MYSQL Server 安全漏洞(CVE-2022-1292)
    https://blog.csdn.net/weixin_45839894/article/details/126158078openssl:relocationerror:openssl:symbolEVP_mdc2versionOPENSSinedinfilelibcrypto.so.1.1withlinktimereference建议先删掉/usr/bin/openssl......