有。也可以使用decode ,测试如下。。SQL> select case when job='CLERK' then 'yjjcyber' else 'all' end from scott.emp;CASEWHENJOB='CLERK'THEN'YJJCYB ------------------------------ yjjcyber all all all all all all all all yjjcyber all yjjcyber12 rows selectedSQL> select decode(job,'CLERK','yjjcyber','all') from dual;select decode(job,'CLERK','yjjcyber','all') from dualORA-00904: "JOB": 标识符无效SQL> select decode(job,'CLERK','yjjcyber','all') from scott.emp;DECODE(JOB,'CLERK','YJJCYBER', ------------------------------ yjjcyber all all all all all all all all yjjcyber all yjjcyber12 rows selectedSQL>
或case ... when ....
------------------------------
yjjcyber
all
all
all
all
all
all
all
all
yjjcyber
all
yjjcyber12 rows selectedSQL> select decode(job,'CLERK','yjjcyber','all') from dual;select decode(job,'CLERK','yjjcyber','all') from dualORA-00904: "JOB": 标识符无效SQL> select decode(job,'CLERK','yjjcyber','all') from scott.emp;DECODE(JOB,'CLERK','YJJCYBER',
------------------------------
yjjcyber
all
all
all
all
all
all
all
all
yjjcyber
all
yjjcyber12 rows selectedSQL>
有 一样的用法不过也可以用decode