如下3个函数,分别用新内容代替字段的空值://比如说用其他值来代替
nvl(comm, 0):用0代替空的Comm值。
nvl(hiredate, '01-1月-97'):用1997年1月1日代替空的雇佣日期。
nvl(job, '无'):用“无”代替空的职务。
【训练1】 将职务转换成中文显示。//decode最后个参数表示default情况
执行以下查询:
SELECT ename,decode(job, 'MANAGER', '经理', 'CLERK','职员', 'SALESMAN','推销员', 'ANALYST','系统分析员','未知') FROM emp;
结果为:
ENAME DECODE(JOB
-------------- ------------------------
SMITH 职员
ALLEN 推销员
WARD 推销员
JONES 经理
【训练2】 比较字符串的大小,返回最大值。
执行以下查询:
SELECT greatest('ABC','ABD','abc', 'abd') FROM dual;
执行结果为:
GRE
------
abd
说明:在上述四个字符串中,大小关系为abd>abc>ABD>ABC。在ASCII码表中,排在后边的字符大,小写字母排在大写字母之后。字符串的比较原则是,先比较第一位,如果相同,则继续比较第二位,依此类推,直到出现大小关系