Converting text to numbers

A table is created ...
create table safe_to_number_t (
  txt varchar2(10)
);
... and filled with text of which some can be converted to numbers:
insert into safe_to_number_t values ('1.0'   );
insert into safe_to_number_t values ('1'     );
insert into safe_to_number_t values ('22.9'  );
insert into safe_to_number_t values ('FOO'   );
insert into safe_to_number_t values ('-8.99' );
insert into safe_to_number_t values ('-.22'  );
insert into safe_to_number_t values ('-BAR'  );
insert into safe_to_number_t values ('23-45' );
However, some txts cannot be converted...
select to_number(txt) from safe_to_number_t;
... and an error is thrown:
ERROR:
ORA-01722: invalid number
So, a function is created that can safely convert strings to numbers. When the string is inconvertable, it returns null:
create function safe_to_number(txt in varchar2) return number is 
begin
  return to_number(txt);
exception when value_error then
  return null; 
end safe_to_number;
/
select safe_to_number(txt), txt from safe_to_number_t;
SAFE_TO_NUMBER(TXT) TXT
------------------- ----------
                  1 1.0
                  1 1
               22.9 22.9
                    FOO
              -8.99 -8.99
               -.22 -.22
                    -BAR
                    23-45
select safe_to_number(txt), txt from safe_to_number_t;

With regexp_substr

In 10g, it's possible to use regexp_substr for the same effect:
select to_number(
  regexp_substr(txt,'^[-]?[[:digit:]]*\.?[[:digit:]]*$')
) the_number,
  txt
from safe_to_number_t;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
引用\[1\]:error: error parsing recommended.yaml: error converting YAML to JSON: yaml: line 14: could not find expected ':' 。 引用\[2\]:error: error parsing deployment-nginx.yml: error converting YAML to JSON: yaml: line 19: did not find expected key 。 引用\[3\]:\[root@k8s-master ~\]# kubectl apply -f recommended.yaml namespace/kubernetes-dashboard unchanged serviceaccount/kubernetes-dashboard unchanged error: error parsing recommended.yaml: error converting YAML to JSON: yaml: line 14: could not find expected ':' 。 问题: error converting yaml to json是什么意思? 回答: error converting yaml to json意味着在将YAML文件转换为JSON格式时出现了错误。这可能是由于YAML文件中的语法错误或格式错误导致的。在这种情况下,转换工具无法正确解析YAML文件并将其转换为JSON格式。错误消息中提到的行号和错误信息可以帮助定位问题所在,通常是缺少了一个冒号或者缺少了一个关键字。要解决这个问题,您可以检查YAML文件的语法和格式,确保它符合YAML的规范。 #### 引用[.reference_title] - *1* *3* [【排错】error: error parsing recommended.yaml: error converting YAML to JSON: yaml: line 14:的解决...](https://blog.csdn.net/weixin_54628931/article/details/128482574)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [error parsing deployment-nginx.yml: error converting YAML to JSON: yaml: line 19 问题解决](https://blog.csdn.net/weixin_64124795/article/details/129789799)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值