‘DECODE’ may be used inside a SQL statement only
作者: 葛屹肃 | 日期: 2021-12-15 | 分类: 个人杂谈
ORACLE中DECODE函数非常实用,是一个简化版的CASE WHEN THEN END的函数,使用DECODE除了代码简洁外,最重要还是逻辑更清晰,一眼能看出结果,更便于日后维护。
不过,DECODE的使用也有受限的,今天小编使用时,就出现以下提示错误信息:
Error: PLS-00204: function or pseudo-column ‘DECODE’ may be used inside a SQL statement only
按网上所说的,decode是SQL函数,而不是PL/SQL函数
也就是说,只有INSERT、DELETE、SELECT、UPDATE时才能使用DECODE函数,而直接赋值就不能使用了
错误方式:
S1 := DECODE(TEMP_VALUE,1,’80′,2,’90′,’100′);
正确方式:
SELECT DECODE(TEMP_VALUE,1,’80′,2,’90′,’100′) INTO S1 FROM DUAL;
以上是小编所理解的DECODE的使用方式,如有不妥之处,欢迎留言指正。
版权声明:本文由〖葛屹肃〗发布,转载请注明出处!
文章链接:https://www.geyisu.com/2313.html
文章链接:https://www.geyisu.com/2313.html