decode函数用法

SQL>DESCA名称是否为空?类型\\—————————————————————————–C1NUMBERC2VARCHAR2(1)C3VARCHAR2(7)**也正是因为DECODE函数的这种依赖于第一次的值类型作为返回类型,对于其他返回的值如果和第一个类型不匹配,可能会让你遇到很蛋疼的问题:**SQL>DESCA;名称是否为空?类型\\—————————————————————————–C1NUMBERC2VARCHAR2(1)C3VARCHAR2(7)SQL>INSERTINTOAVALUES(2,2,2);已创建1行。

start_position:代表string1的哪个位置开始查找,此参数可选,如果省略默认为1.字符串索引从1开始。

,”

假设student的编号为id,成绩为score,那么:selectid,decode(sign(score-85),1,优秀,0,优秀,-1,decode(sign(score-70),1,良好,0,良好,-1,decode(sign(score-60),1,及格,0,及格,-1,不及格)))fromstudent;======================================================补充2: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)decode函数比较表达式和搜索字,如果匹配,返回结果;如果不匹配,返回default值;如果未定义default值,则返回空值。

http://baike.baidu.com/view/1130040.htm**1DECODE****中的****if-then-else****逻辑******在逻辑编程中,经常用到If–Then–Else进行逻辑判断。