千家信息网

oracle decode函数和 sign函数

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,流程控制函数 DECODEdecode()函数简介:主要作用:将查询结果翻译成其他值(即以其他形式表现出来,以下举例说明);使用方法:Select decode(columnname,值1,翻译值1,
千家信息网最后更新 2026年11月01日oracle decode函数和 sign函数

流程控制函数 DECODE


decode()函数简介:


主要作用:

将查询结果翻译成其他值(即以其他形式表现出来,以下举例说明);


使用方法:

Select decode(columnname,值1,翻译值1,值2,翻译值2,…值n,翻译值n,缺省值)

From talbename

Where …

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


含义解释:

decode(条件,值1,翻译值1,值2,翻译值2,…值n,翻译值n,缺省值)的理解如下:

if (条件==值1)

then    

return(翻译值1)

elsif (条件==值2)

then    

return(翻译值2)    

……

elsif (条件==值n)

then    

return(翻译值n)

else    

return(缺省值)

end if


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


举例说明:

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


SQL如下:


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()函数等;


比较大小函数 sign

函数语法:

sign(n)

函数说明:

取数字n的符号,大于0返回1,小于0返回-1,等于0返回0


示例:

1、select sign( 100 ),sign(- 100 ),sign( 0 ) from dual;

  SIGN(100) SIGN(-100) SIGN(0)

  ---- ---- ----

  1 -1 0


2、a=10,b=20

  则sign(a-b)返回-1


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,

如果取较小值就是

select monthid,decode(sign(sale-6000),-1,sale,6000) from output即达到取较小值的目的。


函数 译为 条件 就是 选择 特殊 两个 作用 使用方法 含义 大小 形式 情况 数字 方法 正数 流程 目的 示例 符号 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技园 互联网科技图片 深圳恒合互联网络科技有限公司 智能科技公司是互联网公司吗 网络科技有限互联网 猫创互联网科技 齐家互联网科技有限公司 互联网科技视频素材 丰台科技园 互联网公司 盛创互联网科技有限公司 恒生科技互联网指数分析 老年人脱离互联网科技的作文 科技赋能互联网健康 互联网还是高科技吗 荆州市昕露互联网络科技有限公司 智腾互联网科技有限公司 呼和浩特新华互联网科技学院 恒生互联网科技业指数调整周期 互联网科技平台产品运营 宁波允成互联网科技有限公司 上海卓越科技互联网 互联网科技工作委员会副主任毛军 科技股互联网 成都仁贤领冠互联网科技有限公司 开启互联网科技时代小说 深圳市运趣互联网科技有限公司 江阴互联网智能科技产品进口 南通创西澳互联网科技有限公司 杭州科技互联网公司有哪些 科技互联网专业务虚会材料
0