我需要回答以下问题,内容为
我写了下面的代码
SELECT job_id,
DECODE(job_id,A, 'Ad_Pres',
B,'St_Man',
C,'IT_PROG',
)JOBID, GRADE
FROM emplyee_grade;
ORDER BY job_id
甲骨文告诉我“缺少表达”,我在这里做错了什么?
感谢帮助。
您的查询有两种错误。
正如其他人已经建议的那样,存在语法错误,请删除最后一个逗号。
从功能上讲,您按照问题做错了。问题是要解码JOB_ID
显示所需GRADEs
的图形,如图所示。
因此,正确的查询是:
SQL> WITH DATA AS(
2 SELECT 'AD_PRES' JOB_ID FROM DUAL UNION ALL
3 SELECT 'ST_MAN' JOB_ID FROM DUAL UNION ALL
4 SELECT 'IT_PROG' JOB_ID FROM DUAL UNION ALL
5 SELECT 'THE REST' JOB_ID FROM DUAL)
6 SELECT job_id,
7 DECODE(JOB_ID, 'AD_PRES','A','ST_MAN','B','IT_PROG','C','THE REST','D','DEFAULT') GRADE
8 FROM DATA
9 /
JOB_ID GRADE
-------- -------
AD_PRES A
ST_MAN B
IT_PROG C
THE REST D
SQL>
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句