SQL中 decode()函数的应用和一些特殊的传值方法
1. decoode()函数的简单应用
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()函数等;
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,即达到取较小值的目的。
2.复杂的传值类型
(1)前端传list型 如:
order by decode("medicineId",#{subStr})
看着这个order by 是错的 , 实际不然,当 #{subStr} 这个值是个list集合的时候,就构成了 完整的decode函数
(2)从另一张表中查找的数据 拼接 decode函数 如:
decode(t.ask_source_srl,'C003004','申诉',(select d.code_descfrom DATA_CODE dwhere d.code_id = t.COMPLAINT_TYPEand d.data_id = 'COMPLAINT_TYPE')) as "complaintType",
这个decode的第二个条件就是从数据库的另一个表查出来的数据
SQL中 decode()函数的应用和一些特殊的传值方法相关推荐
- SQL中decode()函数简介
SQL中decode()函数简介 Select decode(columnname,值1,翻译值1,值2,翻译值2,...值n,翻译值n,缺省值)From talbenameWhere - 其中:co ...
- SQL中decode函数的用法
SQL中decode函数的用法 2008-07-30 17:11:14 本文已公布到博客频道职场·创业分类 DECODE函数是ORACLE PL/SQL是功能强大的函数之一,目前还只有ORACLE公司 ...
- sql中decode(...)函数的用法
sql中decode(...)函数的用法 相当于if语句 decode函数比较1个参数时 SELECT ID,DECODE(inParam,'beComparedParam','值1' ,'值2') ...
- SQL中 decode() 函数使用介绍
[SQL]SQL中 decode() 函数介绍 主要作用:将查询结果翻译成其他值(即以其他形式表现出来) decode() 函数的语法: select decode(columnname,值1,翻译值 ...
- SQL中 decode()函数简介
今天看别人的SQL时看这里面还有decode()函数,以前从来没接触到,上网查了一下,还挺好用的一个函数,写下来希望对朋友们有帮助哈! decode()函数简介: 主要作用:将查询结果翻译成其他值(即 ...
- oracle sql文字列函数,Oracle 数据库SQL中 decode()函数简介
decode()函数简介: 主要作用:将查询结果翻译成其他值(即以其他形式表现出来,以下举例说明): 使用方法: Select decode(columnname,值1,翻译值1,值2,翻译值2,.. ...
- SQL中 decode()函数
decode()函数简介: 主要作用:将查询结果翻译成其他值(即以其他形式表现出来,以下举例说明): 使用方法: Select decode(columnname,值1,翻译值1,值2,翻译值2,-值 ...
- SQL中 decode()函数介绍
语法:select decode(columnName,值1,翻译1,值2,翻译2,...,值n,翻译n,缺省值) from tableName where ... 其中:columnname为要选择 ...
- SQL中DECODE函数用法
DECODE函数用法: DECODE(expr_expression, search_expression, result_expression, [default_expression]) 当sea ...
- SQL中object_id函数的用法
SQL中object_id函数的用法 收藏 int object_id('objectname'); 此方法返回数据库对象标识号. 其中,参数objectname 表示要使用的对象,其数据类型为nc ...
最新文章
- mysql error1045 yes_MySQLERROR1045(28000)错误的解决办法_MySQL
- BB陆逊高达(3Dmax)
- 推荐系统实践-第一章
- 计算机硬盘工作时应该避免什么,什么是电脑硬盘?有何作用?如何保养它?
- win10新建管理员账户_【经验篇001】Win10专业版如何开启超级管理员账户
- 中控指纹采集器开发指纹识别项目(说明)
- (None resource)-Binary system
- 初志科技发布云策略 安全云平台如稳固建筑
- 数百万戴尔设备遭 BIOSConnect 代码执行漏洞影响
- Codeforces 374A - Inna and Pink Pony
- 拓端tecdat|R语言ggmap空间可视化机动车交通事故地图
- java awt 教程_JAVA教程第五讲AWT图形用户界面设计
- 串口通信接口标准(三)——RS232
- GroupBox与Panel控件
- 性能测试----测试执行
- linux shell 切换目录,如何在Shell中快速切换目录?
- 视频大数据与物联网(IoT)融合发展的探索
- 纯平显示器_绿色计算:切换到液晶纯平显示器
- GoogleTest系列:TEST_P的基本用法
- c语言s型曲线方程,电机控制 | S曲线加减速
热门文章
- 800份h5游戏源码
- mysql数据库url正确的是_下面关于连接mysql下的mydb数据库的url,编写正确的是()...
- win10配置计算机环境变量,教你win10怎么设置环境变量
- grads插值_GrADS第6章变量和函数讲课.ppt
- steam host修改
- 信息学奥赛一本通1368 对称二叉树
- 北理工团队在不同注意力状态下肢体运动意图的鲁棒神经解码方面取得重要研究进展...
- 一文读懂 Spring Bean 的生命周期
- C语言常用开发环境IDE
- 微信朋友圈评论功能测试