DB2 的 case when then else end 条件分支的处理

2024-06-11 07:58

本文主要是介绍DB2 的 case when then else end 条件分支的处理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

两种语法模式:


(1):只有一个分支

 

     CASE
        WHEN 条件  THEN 结果1
        ELSE            结果2
      END
(2):支持多种分支

 

     CASE 表达式1
        WHEN 表达式2   THEN 结果1
        ELSE            结果2
   END
上面的WHEN可以重复多次,

 

===================

 

简单示例:

 

  1. select    
  2.     case when 1 = 1  
  3.     then 1  
  4.     else 2  
  5.     end;  
  1. select    
  2.     case 2  
  3.     when 1 then 1  
  4.     when 2 then 2  
  5.     when 3 then 3  
  6.     else 4  
  7.     end;  

============================

 

 

下面详细的各举几个例子,这些例子可以用于ESQL和交互式的SQL中
eg1:处理被0除

[java]  view plain copy
  1. SELECT   
  2. CASE   
  3. WHEN fileld1=0 THEN 0  
  4. ELSE fileld2/field1  
  5. END  
  6. FROM  FILE  


eg2:字段值对应转换
[java]  view plain copy
  1. SELECT ORDNO,CUSNAM,SHIPDATE,CASE  
  2.                 WHEN SHIPDATE<CURDATE()  THEN 'OVERDUE'  
  3.                 WHEN SHIPDATE=CURDATE()  THEN 'PROCESSING'  
  4.                 WHEN SHIPDATE>;CURDATE()  THEN 'ACTIVE'  
  5.               END  
  6. FROM FILE  


eg3:获取月份的名字:上面的例子
[java]  view plain copy
  1. SELECT ORDNO,CUSNO,  
  2.    CASE  MONTH(SHIPDATE)  
  3.    WHEN  '01'   THEN 'Jan'  
  4.    WHEN  '02'   THEN 'Feb'  
  5.    WHEN  '03'   THEN 'Mar'  
  6.    WHEN  '04'   THEN 'Apr'  
  7.    WHEN  '05'   THEN 'May'  
  8.    WHEN  '06'   THEN 'Jun'  
  9.    WHEN  '07'   THEN 'Jul'  
  10.    WHEN  '08'   THEN 'Aug'  
  11.    WHEN  '09'   THEN 'Sep'  
  12.    WHEN  '10'   THEN 'Oct'  
  13.    WHEN  '11'   THEN  'Nov'  
  14.    WHEN  '12'   THEN  'Dec'  
  15.    END  
  16. FROM FILE  
  

 

===================

 

CASE很好用,不仅SELECT可以用,UPATE里面也蛮灵

以上是关于查询的  下面再来个 update的

 

贴代码直观:

 

 

[c-sharp]  view plain copy
  1. UPDATE properities  
  2. SET   taxrate=  
  3.    CASE   
  4.        WHEN area<10000 THEN 0.05  
  5.        WHEN area<20000 THEN 0.07  
  6.        ELSE 0.09  
  7.    END  

这篇关于DB2 的 case when then else end 条件分支的处理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1050591

相关文章

SpringBoot结合Docker进行容器化处理指南

《SpringBoot结合Docker进行容器化处理指南》在当今快速发展的软件工程领域,SpringBoot和Docker已经成为现代Java开发者的必备工具,本文将深入讲解如何将一个SpringBo... 目录前言一、为什么选择 Spring Bootjavascript + docker1. 快速部署与

Python使用vllm处理多模态数据的预处理技巧

《Python使用vllm处理多模态数据的预处理技巧》本文深入探讨了在Python环境下使用vLLM处理多模态数据的预处理技巧,我们将从基础概念出发,详细讲解文本、图像、音频等多模态数据的预处理方法,... 目录1. 背景介绍1.1 目的和范围1.2 预期读者1.3 文档结构概述1.4 术语表1.4.1 核

Spring Boot @RestControllerAdvice全局异常处理最佳实践

《SpringBoot@RestControllerAdvice全局异常处理最佳实践》本文详解SpringBoot中通过@RestControllerAdvice实现全局异常处理,强调代码复用、统... 目录前言一、为什么要使用全局异常处理?二、核心注解解析1. @RestControllerAdvice2

IDEA中新建/切换Git分支的实现步骤

《IDEA中新建/切换Git分支的实现步骤》本文主要介绍了IDEA中新建/切换Git分支的实现步骤,通过菜单创建新分支并选择是否切换,创建后在Git详情或右键Checkout中切换分支,感兴趣的可以了... 前提:项目已被Git托管1、点击上方栏Git->NewBrancjsh...2、输入新的分支的

一文详解Git中分支本地和远程删除的方法

《一文详解Git中分支本地和远程删除的方法》在使用Git进行版本控制的过程中,我们会创建多个分支来进行不同功能的开发,这就容易涉及到如何正确地删除本地分支和远程分支,下面我们就来看看相关的实现方法吧... 目录技术背景实现步骤删除本地分支删除远程www.chinasem.cn分支同步删除信息到其他机器示例步骤

电脑提示xlstat4.dll丢失怎么修复? xlstat4.dll文件丢失处理办法

《电脑提示xlstat4.dll丢失怎么修复?xlstat4.dll文件丢失处理办法》长时间使用电脑,大家多少都会遇到类似dll文件丢失的情况,不过,解决这一问题其实并不复杂,下面我们就来看看xls... 在Windows操作系统中,xlstat4.dll是一个重要的动态链接库文件,通常用于支持各种应用程序

SQL Server数据库死锁处理超详细攻略

《SQLServer数据库死锁处理超详细攻略》SQLServer作为主流数据库管理系统,在高并发场景下可能面临死锁问题,影响系统性能和稳定性,这篇文章主要给大家介绍了关于SQLServer数据库死... 目录一、引言二、查询 Sqlserver 中造成死锁的 SPID三、用内置函数查询执行信息1. sp_w

Java对异常的认识与异常的处理小结

《Java对异常的认识与异常的处理小结》Java程序在运行时可能出现的错误或非正常情况称为异常,下面给大家介绍Java对异常的认识与异常的处理,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参... 目录一、认识异常与异常类型。二、异常的处理三、总结 一、认识异常与异常类型。(1)简单定义-什么是

SQL中JOIN操作的条件使用总结与实践

《SQL中JOIN操作的条件使用总结与实践》在SQL查询中,JOIN操作是多表关联的核心工具,本文将从原理,场景和最佳实践三个方面总结JOIN条件的使用规则,希望可以帮助开发者精准控制查询逻辑... 目录一、ON与WHERE的本质区别二、场景化条件使用规则三、最佳实践建议1.优先使用ON条件2.WHERE用

Golang 日志处理和正则处理的操作方法

《Golang日志处理和正则处理的操作方法》:本文主要介绍Golang日志处理和正则处理的操作方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考... 目录1、logx日志处理1.1、logx简介1.2、日志初始化与配置1.3、常用方法1.4、配合defer