判断字符串是否一样(可用于转义)
语法:类似case…when…
select
empno,decode(empno,7369,'smith',7499,'allen',7521,'ward',7566,'jones','unknow')
as name from emp where rownum<=10
输出结果
7369 smith
7499 allen
7521 ward
7566 jones
7654 unknow
7698 unknow
嵌套分段
SELECT ename,sal,
DECODE(SIGN(sal - 5000),
1,
'high sal',
0,
'high sal',
- 1,
DECODE(SIGN(sal - 3000),
1,
'mid sal',
0,
'mid sal',
- 1,
DECODE(SIGN(sal - 1000),
1,
'low sal',
0,
'low sal',
- 1,
'low sal')))
FROM
emp
输出结果
SMITH 800 low sal
ALLEN 3600 mid sal
WARD 6250 high sal