Oracle 中 sign和decode 函数用法
来源:互联网 发布:网络拓扑 自动发现 编辑:程序博客网 时间:2024/06/06 20:44
1、sign函数语法: sign(n);sign函数说明: 取数字n的符号,大于0返回1,小于0返回-1,等于0返回0(n可以是表达式,(n-200))例子: 比较大小: a=10; b=50; sign(a-b) ==-1 sign(b-a) == 1 sign(a-10)==0 <pre class="sql" name="code">2、 decode的用法 含义解释: 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 IFdecode(字段或字段的运算,值1,值2,值3) 这个函数运行的结果是,当字段或字段的运算的值等于值1时,该函数返回值2,否则返回值3 当然值1,值2,值3也可以是表达式,这个函数使得某些sql语句简单了许多例子: 有一张user表 这张表中有一个sex(性别)字段,但是字段的值是1或者0,我们需求是显示男或者女,因此处理,那么decode就可以解决了 select decode(u.sex ,1,男,女) from user u;就可以了,细节讲一下: decode(u.sex ,1,男,女);其实decode底层应该是这样比较的(感觉)是u.sex==1?男:女(当然if else是可以的),我想说的是decode比较的是等于,其实并不能比较>或者是< 、>=、<=、只能是等于,但是我们可以结合sign(n)函数就很方便了,因为sign()返回的就是-1,0,1,我们可以根据这三个值来判断,例如: 比较大小: a = 10, b=50. decode(sign(a-b),1,'a>b',sign(a-b),0,'相等','a<b');上面语句转换一下成java: if((a-b)>=1) { return 'a>b'; } else if((a-b)==0) { return '相等' } else{return 'a<b'}因此:sign和decode用到的几率还是蛮大的
0 0
- Oracle 中 sign和decode 函数用法
- Oracle中sign函数和decode函数的使用
- Oracle中sign函数与DECODE函数
- Oracle中的decode函数和sign函数
- ORACLE的SIGN函数和DECODE函数
- ORACLE的sign函数和DECODE函数
- ORACLE的sign函数和DECODE函数
- ORACLE的sign函数和DECODE函数
- ORACLE的sign函数和DECODE函数
- ORACLE的sign函数和DECODE函数
- ORACLE的sign函数和DECODE函数
- ORACLE的sign函数和DECODE函数
- ORACLE的sign函数和DECODE函数
- Oracle的decode函数和sign函数
- 171207之Oracle中decode函数、SIGN函数和INSTR函数
- oracle decode nvl nvl2 sign(即sin) 函数用法
- Oracle中decode函数用法
- Oracle 中 decode 函数用法
- iOS开发之textfield(自用帖)
- C语言strstr函数
- JAVA泛型详解
- 第九周实践项目3—稀疏矩阵的三元组表示的实现及应用(1)
- PHP命名空间namespace使用详解
- Oracle 中 sign和decode 函数用法
- iframe 间传递数据
- 此刻励志-两年后的我们
- django中的signals
- PullZoomView(一) 可下拉可以变大的headView开源项目
- JavaScript_JavaScript的事件监听与捕获和冒泡
- 使用JDBC在MySQL数据库中快速批量插入数据
- 基于DLMS/COSEM协议的智能电表设计
- JAVA集合类介绍