MySQL:检查数值并将 ","更改为 "."

标签 mysql replace numeric

我遇到以下问题:

我定期将值上传到 MySQL 数据库,并且必须检查数值(包括 float )。不幸的是,其中一些数值已被输入,例如 1,23 而不是 1.23

我现在希望 MySQL 进行表更新,并将所有可能的“,”更改为“.”后的数值,将这些值更改为真实数值 (1.23)

示例:

Left, Right should stay as Left, Right

120 should stay as 120

2.5 should stay as 2.5

0,125 should become 0.125

有人知道吗? 非常感谢!

最佳答案

检查你的列是否是数字形式。对于这种情况,你可以使用 MYSQL RLIKE 运算符来匹配正则表达式

UPDATE TABLE_NAME SET COL_NAME=replace(COL_NAME,  ','  , '.'  ) WHERE COL_NAME RLIKE '([0-9])+,([0-9])+'

关于MySQL:检查数值并将 ","更改为 ".",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19859699/

相关文章:

mysql - MySQL表重建后auto_increment列仍然不连续

javascript .replace 和 jQuery .map

c++ - 如何获得 boost 数字绑定(bind)?

MySQL 使用通配符替换查询无法运行

c - 无法用另一个字符串替换字符串中的字符

c++ - 从最低值开始遍历所有可能的浮点值

android - 默认情况下选择数字键盘的 Android 手机中的 Asp.net 文本框

mysql - 模型协会(JOIN)在 cakephp 中不起作用,显示空结果

php - 我可以在 PHP 中混合使用 MySQL API 吗?

mysql - 使用 MySQL 的数据透视表