问题描述
我有以下查询
select avg(to_number(pst_adm_scr)) from dmereg01.tst_scr
我不断收到错误消息:
ORA-01722: invalid number
01722. 00000 - "invalid number"
*Cause: The specified number was invalid.
*Action: Specify a valid number.
该字段最初是具有数字值(分数)的varchar
解决方法
根据您的数据库版本(未指定),您可以使用TO_NUMBER的ON CONVERSION ERROR组件来忽略无效值
SELECT TO_NUMBER('-' DEFAULT null ON CONVERSION ERROR)
from dual;