Oracle数据库Decode()函数的使用方法
[摘要] DECODE函数的作用:它可以将输入数值与函数中的参数列表相比较,根据输入值返回一个对应值。函数的参数列表是由若干数值及其对应结果值组成的若干序偶形式。
DECODE函数的作用:它可以将输入数值与函数中的参数列表相比较,根据输入值返回一个对应值。函数的参数列表是由若干数值及其对应结果值组成的若干序偶形式。当然,如果未能与任何一个实参序偶匹配成功,则函数也有默认的返回值。
区别于SQL的其它函数,DECODE函数还能识别和操作空值。
语法如下:
DECODE(control_value,value1,result1[,value2,result2…][,default_result]);
control _value
试图处理的数值。DECODE函数将该数值与后面的一系列的偶序相比较,以决定返回值。
value1
是一组成序偶的数值。如果输入数值与之匹配成功,则相应的结果将被返回。对应一个空的返回值,可以使用关键字NULL于之对应
result1
是一组成序偶的结果值。
default_result 未能与任何一个值匹配时,函数返回的默认值。
示例如下:
select decode( x , 1 , ‘x is 1 ’, 2 , ‘x is 2 ’, ‘others’) from dual
当x等于1时,则返回‘x is 1’。
当x等于2时,则返回‘x is 2’。
否则,返回others’。
在需要比较2个值的时候,我们可以配合SIGN()函数一起使用。
SELECT DECODE( SIGN(5 -6), 1 'Is Positive', -1, 'Is Nagative', 'Is Zero')
同样,也可以用CASE实现:
SELECT CASE SIGN(5 - 6)
WHEN 1 THEN 'Is Positive'
WHEN -1 THEN 'Is Nagative'
ELSE 'Is Zero' END
from DUAL
另外,大家还可以在Order by中使用Decode。
例:表table_subject,有subject_name列。要求按照:语、数、外的顺序进行排序。这时,就可以非常轻松的使用Decode完成要求了。
select * from table_subject order by decode(subject_name, '语文', 1, '数学', 2, , '外语',3)
相关文档:
mysql 大对象存取:
类型一般应该用mediumblod,
blob只能存2的16次方个byte,
mediumblod是24次方,
一般来说够用了.longblob是32次方有些大.
MYSQL默认配置只能存1M大小的文件,要修改配置,WIN版本的在mysql.ini文件中
修改max_allowed_packet,net_buffer_length等几个参数,或直接SET GLOBAL va ......
一 在Oracle中连接数据库
public class Test1 {
public static void main(String[] args) {
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection conn = DriverManager.getConnection(
&nbs ......
Oracle 10g statistic数据统计,Oracle会根据这些统计信息来决定是走RBO(Rule-BasedOptimization),还是走CBO(Cost-BasedOptimization),会去选择哪种执行计划更划算,影响是否走相关的索引等.如果是CBO的话,它依靠准确的(或者说比较准确的)统计信息来产生优化的执行路径,如果没有做过统计,CBO也就没有做cost评估的依据 ......
1 操作系统备份
操作系统备份和恢复实施起来比较简单,当然也比较费时,要求系统停止使用,此过程包括关闭数据库并从系统上注销所有用户。所有访问被解除之后,系统关闭并以单用户方式重新启动,控制权交给系统管理员,这一步确保没有用户应用程序软件运行,避免修改硬盘上的数据。如果这个备份用于恢复数据库系统,那么系 ......
oracle10g创建用户
Oracle10g 的创建用户名
1、 linux 下 oracle 的启动
以 oracle 身份登录
启动 lsnrctl start
登录 sqplus /nolog
连接数据库 connect /as sysdba
启动数据库 startup
关闭数据库 s ......