MySQL 从字符串字段中提取数值的方法

  • Post author:
  • Post category:mysql





MySQL 从字符串字段中提取数值的方法


个人记录



由于百度搜索结果大部分都是写函数进行转换,个人感觉太繁琐,从网上收集了以下方法,已测试过,可行。



需求描述:有一个公司信息表(r_supplier),其中有一个字段(register_capital)是公司的注册资本,需要提取前面的数字进行条件判断。如图所示:

在这里插入图片描述




一、使用 CAST() 方法



CAST(expr AS type)
  • expr:字段
  • type:需要转换成什么类型



sql:SELECT CAST(s.register_capital AS UNSIGNED) from r_supplier s;



1.示例



在这里插入图片描述



二、使用负号进行转换:-(- 字段)




sql:SELECT -(-s.register_capital) from r_supplier s;



1.示例

在这里插入图片描述




2.如果字段中不包含数字,会变成0

在这里插入图片描述




三、总结

测试时发现第一次执行第一个方法的时候会有点慢,不过后面经过测试,两种方法执行都差不多,可能是因为第一次处理数据的原因




版权声明:本文为qq_25112523原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。