Skip to content

mysql查询结果单位换算后保留两位小数 #23

@koala-coding

Description

@koala-coding

数据库表中sale列的值为23456.789

  1. format函数

说明:format(x,d)是mysql自带的格式化小数函数,format()函数会对小数部分进行四舍五入操作,整数部分从右向左每三位一个逗号进行格式化输出

format函数结果:

23,456.79
  1. truncate函数

说明:truncate(x,d)是mysql自带的函数,truncate()函数会将小数部分d位以后的值直接舍去

truncate函数结果:

23456.78
  1. round函数(常用)

说明:round(x,d)是mysql自带的函数,format()函数会对小数部分进行四舍五入操作,但是不会出现format函数中的带逗号格式

round函数数结果:

23456.79
  1. convert函数(常用)

说明:MySQL 的CAST()和CONVERT()函数可用来获取一个类型的值,并产生另一个类型的值。简单的说就是类型转换。
CONVERT(xxx,类型),但是类型是有限制的,下面几种类型

  • 二进制,同带binary前缀的效果 : BINARY
  • 字符型,可带参数 : CHAR()
  • 日期 : DATE
  • 时间: TIME
  • 日期时间型 : DATETIME
  • 浮点数 : DECIMAL
  • 整数 : SIGNED
  • 无符号整数 : UNSIGNED

根据文初给出的数据,应该是这些写

convert(23456.789,decimal(10,2));

convert函数数结果,这里也是四舍五入:

23456.79

注:解释下dem的意思

DECIMAL(10,2) 总共能存10位数字,末尾2位是小数,字段最大值99999999.99(小数点不算在长度内)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions