当前位置:首页 > 日记 > 正文

Oracle解码()功能使用技能共享

Oracle解码()功能使用技能共享
今天我们需要做一个类似的功能,首先想到的一个栏目,但是怎么做也不是一个好办法,这个功能很好。

解码功能为oracle。它是强大的功能之一。目前,Oracle SQL提供了此功能。其他数据库厂商的SQL实现还没有这个功能。解码有什么用呢

我们首先构造一个例子,假设我们想提高知行的工作人员,标准是:在20%付8000元;工资在8000元以上的15%个,通常的做法是先在记录值选择薪酬为VaR薪金的雇员薪酬领域的选择,然后流控制语句等if-then-else或选择变量工资判决案。

如果我们使用解码功能,那么我们可以省略这些流量控制语句,并直接通过SQL语句进行。如下:选择解码(符号(工资8000)),1,工资* 1.15,- 1,工资* 1.2,员工工资,不是很简洁吗
语法解码解码(价值,因此,IF1,IF2,2,3,3,…,其他),这意味着如果值是相等的人,该函数返回的结果是…,如果它不等于任何值,则返回零。乍一看,解码只能做相同的试验,但正如我们刚才看到的,我们可以通过一些函数或计算取代价值,使解码功能有大于或小于或等于功能。

解码(条件,值1,翻译值1,值2,翻译值2,值n,翻译值n,默认值)解码(字段1,值1,比较2,值2),…比较n,值n缺省值)。

这个函数的含义如下:
如果条件=值1,那么
返回(翻译值1)
elsif条件=价值2
返回(翻译值2)

elsif条件= n值,然后
返回(翻译值n)
其他的
返回(默认)
最后如果

使用技巧解码()函数

软件环境:

1、Windows NT4.0 + Oracle 8.0.4

2、Oracle安装路径是:C: /妇女祈祷像
使用方法:
1。比较大小

从双选择解码(符号1变量2),- 1,变量1,变量2);取一个较小的值

符号()函数返回0, 1和- 1,基于值为0,正或负。

例如:

变量1 = 10,变量2 = 20

符号(变量1变量2)返回到1,解码解码结果为变量的1,达到较小值的目的。
2、表、视图结构转换

有一个现有的销售表销售。表结构是:

月char(6)-月

卖号(10,2)每月销售金额

现有的数据是:

二十亿零一万一千

二十亿零二万一千一百

二十亿零三万一千二百

二十亿零四万一千三百

二十亿零五万一千四百

二十亿零六万一千五百

二十亿零七万一千六百

二十亿零一百零一万一千一百

二十亿零二百零二万一千二百

二十亿零三百零一万一千三百

要转换为以下结构的数据:

年份char(4)年

month1数(10,2)-- 1个月的销售金额

次数(10,2)-- 2个月的销售金额

个数(10,2)-- 3个月的销售金额

月数(10,2)-- 4个月的销售金额

month5数(10,2)-- 5个月的销售金额

2.1数(10,2)-- 6个月的销售金额

month7数(10,2)-- 7个月的销售金额

month8数(10,2)-- 8个月的销售金额

month9数(10,2)-- 9个月的销售金额

month10数(10,2)-- 10个月的销售金额

month11数(10,2)-- 11个月的销售金额

month12数(10,2)-- 12个月的销售金额

结构转换的SQL语句是:

创建或替换视图

v_sale(年,month1,次,个月,月,month5,2.1,month7,month8,month9,month10。

作为

选择

substrb(月、1),

和(解码(substrb(月、5),01,出售,0))),

和(解码(substrb(月、5),参会的,出售,0))),

和(解码(substrb(月、5),2003,出售,0))),

和(解码(substrb(月、5),2004,出售,0))),

======================================================
补充1:
有学生成绩表的学生。现在我们需要使用解码函数来实现以下功能:> 85是优秀的,> 70是好的,> 60是通过的,否则就失败了。
假设学生的数量是id,结果是分数,那么:
选择ID,解码(标志(score-85),1,0,优秀,优秀,1,
解码(标志(score-70),1,0,'好','好',1,
解码(标志(score-60),1,0,通过,通过,1,不及格))))
从学生;
======================================================
补充2:解码功能的语法结构如下:
解码(表达search_1,result_1)
解码(表达search_1,result_1,search_2,result_2)
解码(表达search_1,result_1,search_2,result_2,…,search_n,result_n)

解码(表达search_1,result_1,默认)
解码(表达search_1,result_1,search_2,result_2,默认)
解码(表达search_1,result_1,search_2,result_2,…,search_n,result_n,默认)
解码函数比较表达式和搜索词,如果匹配,返回结果;如果不匹配,则返回默认值;如果未定义默认值,则返回null值。
下面是一个简单的测试来说明解码函数的用法:
创建表的SQL >选择用户名,default_tablespace,lock_date从dba_users;

表的创建。

从T选择;

default_tablespace lock_date用户名
---------------------------------------------------------------------
系统
系统
outln系统
csmig系统
史葛系统
eygle用户
dbsnmp系统
oracle系统20-oct-04

选择8行。
已选择的用户名,解码(lock_date,null,'unlocked ','locked ')状态从T;

用户名状态
--------------------------------------
系统解锁
系统解锁
outln解锁
csmig解锁
史葛打开
eygle解锁
dbsnmp解锁
oracle的锁

选择8行。

已选择的用户名,解码(lock_date,null,'unlocked ')状态从T;

用户名状态
--------------------------------------
系统解锁
系统解锁
outln解锁
csmig解锁
史葛打开
eygle解锁
dbsnmp解锁
wmsys8行选择。

相关文章

判断正、盗版win7的方法不被欺骗

判断正、盗版win7的方法不被欺骗

欺骗,方法,不被,电脑软件,点评:微软官方网站特意开辟了如何辨别真假款。用户可以根据微软提供的信息判断所购买的产品是否被欺骗和欺骗,感兴趣的朋友可以理解。 在某些情况下,微软公司很清楚,盗版者利用先进技术复制他们的软件产品,以至于连微软…

将系统恢复功能的隐藏分区在Win8系

将系统恢复功能的隐藏分区在Win8系

工厂,系统,备份,系统恢复,方法,回顾:Windows 8其他版本的计算机返回部分,一键恢复没有被损坏,需要备份系统。如果直接进行备份,Windows系统下的重置和恢复功能将不会被使用。 当其他版本的计算机被转换为Windows 8的其他版本时,当一个密钥恢复没…

的mmdiag.exe过程是什么文件mmdiag

的mmdiag.exe过程是什么文件mmdiag

查询,文件,过程,电脑软件,mmdiag,点评:mmdiag.exe的Musicmatch点唱机的多媒体播放和组织相关的计划的一部分 进程文件:mmdiag或mmdiag.exe 进程名称:Musicmatch Jukebox组件 过程类别:安全风险的过程 英文描述: mmdiag.exe是一个过程,属于Music…

的过程,是一个pptd40nt.exe查询pptd

的过程,是一个pptd40nt.exe查询pptd

查询,是一个,过程,电脑软件,pptd40nt,点评:pptd40nt.exe ScanSoft PaperPort是相关程序文档的个人和商业组织 进程文件:pptd40nt或pptd40nt.exe 进程名称:ScanSoft PaperPort 过程类别:安全风险的过程 英文描述: pptd40nt.exe是一个过程,属于Sc…

Excel设置单元格边界

Excel设置单元格边界

边界,设置,单元格,电脑软件,Excel,核心提示:如果要将表添加到边框行,可以设置以下设置。1。使用菜单命令将表添加到表中,并使用菜单命令将边框添加到表中。(1)选择要添加到帧行的单元格区域。(2)单击格式单元格菜单命令,并进行调整… 如果要将表添…

如何打开CMD命令提示符win7

如何打开CMD命令提示符win7

命令提示符,电脑软件,CMD,点评:有时我们需要在WIN7下打开一个命令提示符,你可以参考下面的方法 如何打开CMD是win7 打开命令行窗口有两种方法。 首先,点击开始菜单按钮;,,然后输入cmd在搜索程序和文件;然后按enter和键键盘。 第二,单击开始按钮,然…

hotkey.exe的功能是什么热键进程查

hotkey.exe的功能是什么热键进程查

进程,查询,热键,功能,电脑软件,评论:详细的介绍了hotkey.exe -热键的过程 进程文件:热键或hotkey.exe 进程名称:onetouchhotkey应用 过程类别:安全风险的过程 英文描述: hotkey.exe是应用属于onetouchhotkey应用,它也被称为以下三个方面。 中文…

一小套win7常用的计算机动画处理方

一小套win7常用的计算机动画处理方

处理方法,计算机动画,常用,电脑软件,一小套,点评:电脑假死是不可避免的,但如果计算机经常假死我们要如何解决这里有一些常见的解决方案,你可以试试。 长时间使用电脑假死是不可避免的,但如果计算机经常假死我们能做什么来解决它到底是什么,萧边…

excel输入法0

excel输入法0

输入法,电脑软件,excel,核心提示:>当我们使用excel时,我们经常会发现输入数为001。我们面前的两个0个零已经过去了。怎么了这是我excel的问题吗事实上,只要它被设置为解决问题,下面将与您分享!方法1:设置表>当我们使用excel时,我们经常会发现输入…

请选择适当的列

请选择适当的列

请选择,电脑软件,思维导图 点击图片看大图。 介绍 情况:如果您的表结构设计不好或索引设计不好,请优化表结构设计,并给出适当的索引,这样您的查询性能可以增加几个数量级。 我们想提高业绩,需要考虑的因素: 1。建筑设计 2。设计指标 三.评估查…

Windows8.1系统更新双击IE11图标没

Windows8.1系统更新双击IE11图标没

图标,双击,响应,系统,无法启动,Comments: some friends who use the Win8 system or use Win8.1 system find that after the system is automatically updated, double-click the IE11 icon, IE11 can't even start. 如果遇到类似的情况,…

你启动win7pe工具箱安装使用图文教

你启动win7pe工具箱安装使用图文教

安装使用,图文教程,启动,电脑软件,win7pe,点评:首先,你开始windows7pe工具箱下载到本地计算机。建议下载到计算机桌面,然后很容易地找到它,然后按照以下步骤进行操作。 1。首先下载你开始windows7pe工具箱到电脑的地方,建议下载到电脑桌面(方便自…