博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Oracle 常用函数(Decode,sign,lpad)
阅读量:7112 次
发布时间:2019-06-28

本文共 1224 字,大约阅读时间需要 4 分钟。

---DECODE()函数,它将输入数值与函数中的参数列表相比较,根据输入值返回一个对应值。函数的参数列表是由若干数值及其对应结果值组成的若干序偶形式。当然,如果未能与任何一个实参序偶匹配成功,则函数也有默认的返回值。

语法结构如下:

decode (expression, search_1, result_1)decode (expression, search_1, result_1, search_2, result_2)decode (expression, search_1, result_1, search_2, result_2, ...., search_n, result_n)decode (expression, search_1, result_1, default)decode (expression, search_1, result_1, search_2, result_2, default)decode (expression, search_1, result_1, search_2, result_2, ...., search_n, result_n, default)

比较表达式和搜索字,如果匹配,返回结果;如果不匹配,返回default值;如果未定义default值,则返回空值。

 

---Decode与sign函数联用比较大小:

语法:select decode(sign(arg1-arg2),-1, arg1, arg2) from dual; --get arg1与arg2的较小值  

实例:select decode(sign(3-5),1 ,3, 5) from dual  

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

---补充:有学生成绩表student,现在要用decode函数实现以下几个功能:成绩>85,显示优秀;>70显示良好;>60及格;否则是不及格。
假设student的编号为id,成绩为score,那么:
select id, decode(sign(score-85),1,'优秀',0,'优秀',-1,
decode(sign(score-70),1,'良好',0,'良好',-1,
decode(sign(score-60),1,'及格',0,'及格',-1,'不及格')))
from student;
 
---lpad(String ,最后字符串长度>0,填充的内容)
例如:
select lpad('test',10) from dual; 
将返回“    test”
 
lpad('tech', 2); 将返回'te'
 
select lpad('test',10,'ee') from dual;
结果将返回
eeeeeetest

转载于:https://www.cnblogs.com/flord/p/5710323.html

你可能感兴趣的文章
分页骨架
查看>>
IOS--UIDatePicker 时间选择器 的使用方法详细
查看>>
ORACLE系统表大全
查看>>
#研发解决方案介绍#基于持久化配置中心的业务降级
查看>>
设计模式--建造者(Builder)模式
查看>>
高效方法势图
查看>>
cocos设计模式之二段构建模式
查看>>
PHP面向对象的基本写法(区别于java)
查看>>
Oracle EBS 入门
查看>>
js 规范
查看>>
一个4节点Hadoop集群的配置示例
查看>>
DG_Oracle DataGuard Primary/Standby物理主备节点安装实践(案例)
查看>>
28个MongoDB 的问题
查看>>
权限表设计
查看>>
代码阅读分析工具Understand 2.0试用
查看>>
[LeetCode] Binary Search Tree Iterator 二叉搜索树迭代器
查看>>
menuStrip鼠标经过自动显示菜单
查看>>
LoadRunner 11简单使用
查看>>
Android 各个版本号WebView
查看>>
VS2013常用快捷键
查看>>