MYSQL中如何让字段结果精确到小数点后两位数字

MYSQL中如何让字段结果精确到小数点后两位数字,第1张

可以在建表的时候限定小数点的长度,例如decimal(5,2),后面的2就是2位的意思。

如果表已经建好,可以在查询语句中用函数 round(X,2) 转换,X为字段,后面的数字为长度,你要几位就填几。

在mysql中,这种计算可用TIMESTAMPDIFF函数来解决,但是解决过程中需要将数据多次加工。

1、创建测试表及插入测试数据:

create table test

(time1 datetime,

time2 datetime)

insert into test values ('2015-04-03 17:01:09','2015-06-03 22:09:30')

2、目前要结算time2和time1的时间差,用如下语句:

select round(TIMESTAMPDIFF(second,time1,time2)/3600,2) from test

结果如图:

解读:

首先,先用

select TIMESTAMPDIFF(second,time1,time2) from test

来计算两个时间之间的秒数差。

然后,得到的结果除以3600,即为这两个时间之间的小时数。

最后因为要求保留2位小数,则通过round函数,四舍五入,取出2位小数即可。

select concat(truncate(goods_store_price,0),'.00') from 表

truncate函数保留小数后几位,第二个参数是保留的小数位数,为0 则表示取整数,注意这里不是四舍五入。concat函数则是将几个连在一起。


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

原文地址: http://outofmemory.cn/zaji/7296425.html

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

发表评论

登录后才能评论

评论列表(0条)

保存