求教关于sql中str函数的问题,str(1.15,18,1)为什么返回的是1.1?
最近看到某程序四舍五入用的是str函数,发现 1.15保留1位小数变成是1.1
于是再试了下其他几个数得出如下结果
SELECT STR(1.04,18,1) 返回 1.0
SELECT STR(1.05,18,1) 返回 1.1
SELECT STR(1.06,18,1) 返回 1.1
SELECT STR(1.14,18,1) 返回 1.1
SELECT STR(1.15,18,1) 返回 1.1
SELECT STR(1.115,18,2) 返回 1.12
SELECT STR(1.16,18,1) 返回 1.2
SELECT STR(1.24,18,1) 返回 1.2
SELECT STR(1.25,18,1) 返回 1.3
SELECT STR(1.26,18,1) 返回 1.3
发现就.15保留1位小数 并不是四舍五入的规则,不知道为何?
用decimal函数来转换就没什么问题
有哪位达人能解惑么?