Mysql - 字符串、数字相互转化

ゝ一世哀愁。 2023-07-13 04:14 95阅读 0赞

1、字符串转数字

1.1、通过+0操作

最简单的方式就是直接在字符串后面+0,就相当于直接把字符串转为数字类型了,下面可以看一下具体的操作,可以看到通过+0操作,成功将两个字符串转化为了数字,并得到了相加后的结果。
在这里插入图片描述

语法:

  1. 字符串+0

还能用来字符串转数字进行排序

  1. select * from orders order by (mark+0) desc

1.2、CAST()函数

使用CAST()函数,使用方式为CAST(value AS type);,下面可以看一下具体的操作例子,通过如下sql语句查看结果:

  1. SELECT CAST('5.45' AS SIGNED);

可以看到结果直接将字符串’5.45’转为了数字5,原因是SIGNED代表整数。

在这里插入图片描述
如果想要将字符串’5.45’转化为浮点数5.45,可以使用DECIMAL,那么sql语句就改为如下:

  1. SELECT CAST('5.45' AS DECIMAL(9,2));

9和2分别代表精度和小数点后位数,如图所示。
在这里插入图片描述

1.3、CONVERT(value, type)函数

使用CONVERT(value, type);方法, 下面可以看一下具体的操作,通过如下sql语句查看结果:

  1. SELECT CONVERT('67',SIGNED);

可以看到结果直接将字符串’67’转为了数字67,如图所示。
在这里插入图片描述

同样,如果想使用CONVERT方法将带有小数的字符串转化为浮点数,可以直接使用DECIMAL,下面看一下示例sql:

  1. SELECT CONVERT('67.35',DECIMAL(9,2));

结果也是可以成功转化,运行结果如图所示。
在这里插入图片描述


2、数字转换为字符串

2.1、CONVERT()函数

如果想执行相反的操作,也就是将数字转化为字符串的话,可以使用CHAR,看一下sql语句:

  1. SELECT CONVERT(23,CHAR);

运行结果如下图所示。
在这里插入图片描述

2.2、+""操作

将数字转化为字符串,也可以直接通用“+’’”的方式,sql语句如下:

  1. SELECT 123+'';

该sql的运行结果如图所示。
在这里插入图片描述

发表评论

表情:
评论列表 (有 0 条评论,95人围观)

还没有评论,来说两句吧...

相关阅读

    相关 字符串数字相互转换

    > 有时候在服务器端开发的时候,需要对自定制上层协议来序列化和反序列化数据,这种情况下有时候就会用到标题所言的这种操作。下面我列举几种常见的方法。 1. sprintf函数