sql中decode的用法_sql求和函数

sql中decode的用法_sql求和函数decode()函数的语法:其中:columnname为要选择的table中所定义的column;缺省值可以是你要选择的columnname本身,也可以是你想定义的其他值,比如Other等;

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

decode() 函数的语法:

1 Select decode(columnname,值1,翻译值1,值2,翻译值2,...值n,翻译值n,缺省值) 2 
3 From talbename 4 
5 Where

其中:columnname为要选择的table中所定义的column;

   缺省值可以是你要选择的column name本身,也可以是你想定义的其他值,比如Other等;

主要作用:相当于IF语句, 将查询结果翻译成其他值。(即以其他形式表现出来)。

 

举例说明:

现定义一table名为output,其中定义两个column分别为monthid(var型)和sale(number型),若sale值=1000时翻译为D,=2000时翻译为C,=3000时翻译为B,=4000时翻译为A,如是其他值则翻译为Other:

Select monthid , decode (sale,1000,'D',2000,'C',3000,'B',4000,'A',’Other’) sale from output

若只与一个值进行比较:

Select monthid ,decode(sale, NULL‘---’,sale) sale from output

 

decode中可使用其他函数,如nvl()函数或sign()函数等:

  NVL(EXPR1,EXPR2)

  若EXPR1是NULL,则返回EXPR2,否则返回EXPR1。

SELECT NAME,NVL(TO_CHAR(COMM),'NOT APPLICATION') FROM TABLE1;

如果用到decode函数中:

select monthid,decode(nvl(sale,6000),6000,'NG','OK') from output;

 

  sign()函数根据某个值是0、正数还是负数,分别返回0、1、-1,

用如下的SQL语句取较小值:

select monthid,decode(sign(sale-6000),-1,sale,6000) from output;

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/166760.html原文链接:https://javaforall.net

(0)
上一篇 2022年8月1日 上午6:46
下一篇 2022年8月1日 上午6:46


相关推荐

  • centos7.6安装oracle11g_centos7安装oracle11g

    centos7.6安装oracle11g_centos7安装oracle11g一Oracle安装前的准备1.1oracle11g下载地址:OracleDatabase11gRelease2(11.2.0.1.0)  Enterprise/StandardEditionforLinux(32-bit)http://download.oracle.com/otn/linux/oracle11g/R2/linux_11gR2_data

    2026年2月9日
    6
  • HTML的注释与JavaScript注释及快捷键「建议收藏」

    HTML的注释与JavaScript注释及快捷键「建议收藏」1、单行注释:在代码前输入两个反斜杠//,或用快捷键ctrl+/2、多行注释:使用/**/把要注释的代码块包起来,或用快捷键shift+alt+a3、若觉得2、的快捷键用着不方便,可以按自己喜欢可以在vscode中修改注释快捷键。…

    2022年5月29日
    27
  • linux查看tomcat版本信息,linux下tomcat版本查看

    linux查看tomcat版本信息,linux下tomcat版本查看本文收集整理关于 linux 下 tomcat 版本查看的相关议题 使用内容导航快速到达 内容导航 Q1 如何查看 tomcat 版本 linuxa 进入 tomcat 安装目录中的 bin 目录 这个文件目录中有 catalina bat 以及 version bat 文件 b 在文件目录地址栏中输入 cmd 命令 c 在命令命令提示符中输入 catalinavers 或者 version 便可以查到当

    2026年3月26日
    1
  • vs编译python好还是pycharm的好_vscode和pycharm那个更好用?

    vs编译python好还是pycharm的好_vscode和pycharm那个更好用?Pycharm 的 Pro 版比 vscode 好用很多 社区版跟 vscode 比各擅胜场 Pycharm 无论哪个版本 都比 vscode 要多占资源 当然 vscode pylance 插件也不是吃素的 这里主要谈谈 PycharmPro 版本比 vscode 强在什么地方 Pycharm 社区版不支持远程调试 连 wsl 也不支持 所以就不考虑了 我比较倾向于 Windows Linux 的混合式开发 即 IDE 运行在 Wind

    2026年3月27日
    2
  • 详解C语言位运算

    详解C语言位运算C 语言提供一些位运算符 用来操作二进制位 bit 1 取反运算符 取反运算符 是一个一元运算符 用来将每一个二进制位变成相反值 即 0 变成 1 1 变成 0 返回 0 上面示例中 对每个二进制位取反 就得到了一个新的值 注意 运算符不会改变变量的值 只是返回一个新的值 2 与运算符 amp 与运算符 amp 将两个值的每一个二进制位进行比较 返回一个新的值 当两个二进制位都为 1 就返回 1 否则返回 0 返回 00011

    2026年3月17日
    3
  • 2021 前端 VUE 面试题总汇

    2021 前端 VUE 面试题总汇一 vue 面试题 1 vue 的生命周期 beforeCreate 实例初始化之后 数据观测和事件配置之前调用 组件的选项对象还没有创建 el 挂载和 data 都没有初始化 无法访问方法和数据 created 实例创建完成之后调用 已经完成了数据观测 属性方法的运算 watch event 事件回调 data 数据初始化已经完成 el 挂载还没有开始 beforeMount 挂载之前调用 el 初始化已经完成 vdom 已经完成 data 和模板的结合生成 html 但是还没有挂载到 html 页面里 mounted 挂载

    2026年3月16日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号