mysql数据库怎样使用sql语句将百分比转换为小数显示

mysql数据库怎样使用sql语句将百分比转换为小数显示,第1张

直接将百分率那列乘以001即可(中间需要提取%百分号左侧的有理数,包括使用转换函数强制转换成实数,如双精度浮点数)。

-- 伪码

SELECT percentage001 AS chValue;

-- such as

20%=20001=020

浮点数据类型能带小数又能计算。它包括REAL 数据类型、FLOAT、DECIMAL、NUMERIC

给大家简单分析一下:

1、REAL 数据类型   REAL数据类型可精确到第7 位小数,其范围为从-340E -38 到340E +38。 每个REAL类型的数据的存储空间占用4 个字节。

2、FLOAT   FLOAT数据类型可精确到第15 位小数,其范围为从-179E -308 到179E +308。 每个FLOAT 类型的数据占用8 个字节的存储空间。 存储空间暂用8个字节。

3、DECIMAL    DECIMAL数据类型可以提供小数所需要的实际存储空间,但也有一定的限制,可以用2 到17 个字节来存储从-10的38次方-1 到10的38次方-1 之间的数值。可将其写为DECIMAL[ p [s] ]的形式,p 和s 确定了精确的比例和数位。其中p 表示可供存储的值的总位数(不包括小数点),缺省值为18; s 表示小数点后的位数,缺省值为0。 例如:decimal (15 5),表示共有15 位数,其中整数10 位,小数5。 位表4-3 列出了各精确度所需的字节数之间的关系。

4、NUMERIC    NUMERIC数据类型与DECIMAL数据类型以及其模式一样。

select reverse(substring(reverse(字段),0,CHARINDEX('0',reverse(字段)))) from 表名 where 条件

select reverse(substring(reverse('1232312233'),0,CHARINDEX('0',reverse('1232312233

')))) from 表

reverse() 反转

substring() 截取 参数1 表示要截取的字符 参数2 表示从那里截取 参数3 表示截取多少位

charindex() 查找 参数1 表示要查找的字符 参数2 表示从哪个字符串中查找

要截取最后一个点的位置后面的数 由于没有截取最后一个的函数 我们不妨先将字符串反转 从而找到第一个点的位置 截取的时候 我们也反转一下 那么最后得到截取的字符串也是被反转的 所以最后我们也要再反转成我们想要的值

2个建议,

1尽量少用rsupdate等可更新记录集

2把dj,buymoney的类型改成decimal类型,小数点精确到后面2位

应该没有问题

在rsupdate之前使用msgbox 看一下你的SQL

以上就是关于mysql数据库怎样使用sql语句将百分比转换为小数显示全部的内容,包括:mysql数据库怎样使用sql语句将百分比转换为小数显示、SQL哪些数据类型能带小数又能计算的、数据库怎样用sql语句查询字段最后面的小数点后面的数字等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9641854.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存