使用NVL函数报错我的products表是有空值的但是在使用NVL是就报错,请问是怎么回事?[解决办法]No Id改成整
使用NVL函数报错
我的products表是有空值的
但是在使用NVL是就报错,请问是怎么回事?
[解决办法]
'No Id'改成整数
[解决办法]
你的product_type_id是number类型,不是字符串
[解决办法]
同上
product_type_id是number类型,NVL(product_type_id,数值)就可以了啊
[解决办法]
select nvl(null ,'ccc') from dual;
select nvl('1' ,'c cc') from dual;红字处为字符串。
[解决办法]
改成nvl(product_type_id
[解决办法]
'' ,'No id')
[解决办法]
各楼的都是正解,呵呵
[解决办法]
CMD面板下面有错误提示的invalid number,无效的数字。
说明你使用NVL函数的时候给定的默认值类型,与product_type_id不匹配了。
而你给出的恰恰是不匹配的值'no id'字符类型。所以才出错!
看你写的查询语句应该也是无实际意义的,你可以修改当product_type_id为null时,让默认值为一个任意NUMBER类型的数值。
如:
SELECT NVL(product_type_id, 0), name FROM products;
[解决办法]
支持2楼的见解
