mysql里字符串转数字运算
时间: 2023-10-16 12:29:33 浏览: 78
在 MySQL 中,可以使用 CAST() 或 CONVERT() 函数将字符串转换为数字例如,将字符串 "123" 转换为数字,可以使用以下语句:
```
SELECT CAST("123" AS SIGNED);
```
或
```
SELECT CONVERT("123", SIGNED);
```
其中 SIGNED 表示转换为有符号整数。
如果要进行数字运算,可以将字符串转换为数字后进行操作。例如,将字符串 "123" 和 "456" 相加,可以使用以下语句:
```
SELECT CAST("123" AS SIGNED) + CAST("456" AS SIGNED);
```
或
```
SELECT CONVERT("123", SIGNED) + CONVERT("456", SIGNED);
```
这将返回数字 579。
相关问题
mysql 数字字符串做数字加法运算
在 MySQL 中,可以使用 CAST 函数将字符串转换为数字类型,然后进行加法运算。例如,假设有两个字符串类型的数字变量 a 和 b,要进行加法运算,可以使用以下语句:
```
SELECT CAST(a AS UNSIGNED) + CAST(b AS UNSIGNED) AS result;
```
其中,CAST(a AS UNSIGNED) 将字符串类型的变量 a 转换为无符号整数类型,同理 CAST(b AS UNSIGNED) 将字符串类型的变量 b 转换为无符号整数类型,然后将它们相加。
另外,如果字符串中包含非数字字符,则会返回 0。如果要避免这种情况,可以使用 REGEXP_REPLACE 函数将非数字字符替换为空字符串,例如:
```
SELECT CAST(REGEXP_REPLACE(a, '[^0-9]', '') AS UNSIGNED) + CAST(REGEXP_REPLACE(b, '[^0-9]', '') AS UNSIGNED) AS result;
```
其中,REGEXP_REPLACE 函数将 a 和 b 中的非数字字符替换为空字符串,然后再将它们转换为数字类型并相加。
mysql 数字字符串做数字加法运算并更新
要在 MySQL 中将数字字符串做数字加法运算并更新,可以使用 UPDATE 语句结合 CAST 函数来实现。例如,假设有一个表 table1,其中包含两列 col1 和 col2,它们都是字符串类型的数字变量,要将它们相加并更新到另一列 col3 中,可以使用以下语句:
```
UPDATE table1 SET col3 = CAST(col1 AS UNSIGNED) + CAST(col2 AS UNSIGNED);
```
其中,CAST(col1 AS UNSIGNED) 将 col1 转换为无符号整数类型,同理 CAST(col2 AS UNSIGNED) 将 col2 转换为无符号整数类型,然后将它们相加并更新到 col3 中。
另外,如果字符串中包含非数字字符,则会返回 0。如果要避免这种情况,可以使用 REGEXP_REPLACE 函数将非数字字符替换为空字符串,例如:
```
UPDATE table1 SET col3 = CAST(REGEXP_REPLACE(col1, '[^0-9]', '') AS UNSIGNED) + CAST(REGEXP_REPLACE(col2, '[^0-9]', '') AS UNSIGNED);
```
其中,REGEXP_REPLACE 函数将 col1 和 col2 中的非数字字符替换为空字符串,然后再将它们转换为数字类型并相加,最后更新到 col3 中。
阅读全文