1.小数位不四舍五入 , 例如 : 21.875 保留 2位小数 返回 21.87 2. 小数位并四舍五入, 例如 : 21.875 保留 2位小数 返回 21.88 ,
又例如 : 21.875 保留 1位小数 返回 21.9 3.只返回小数部分 ,例如 36.0125 返回 0.0125 4.返回整数部分 ,例如 36.0125 返回 36 5.返回整数部分并进位 ,例如 36.0125 返回 37 6.返回整数部分并四舍五入 ,例如 36.0125 返回 36 , 又例如 36.8125 返回 37
又例如 : 21.875 保留 1位小数 返回 21.9 3.只返回小数部分 ,例如 36.0125 返回 0.0125 4.返回整数部分 ,例如 36.0125 返回 36 5.返回整数部分并进位 ,例如 36.0125 返回 37 6.返回整数部分并四舍五入 ,例如 36.0125 返回 36 , 又例如 36.8125 返回 37
解决方案 »
- sql查询语句求优化
- 我想问一下mysql-5.0.18-win32这个版本支不支持在Win7上安装
- 又来麻烦大家,TINYINT(1) == BIT?
- 请教一个sql语句
- 数据导入问题
- 如何将mysql数据导到excel
- 希望用substring 截取表aaaa的name列的前两个字母,填入到表bbbb相应的id后name1里
- Windows 下 mysql connector c++ 使用setblob后执行报错
- Mysql插入时报错Got a packet bigger than 'max_allowed_packet' bytes
- 我这个创建表的语句请求老师傅看看,错在什么地方
- postgresql数据库 select for update 问题
- 如何在mysql中设置标识列?
3.只返回小数部分 ,例如 36.0125 返回 0.0125
mysql> set @a=2.0124;
Query OK, 0 rows affected (0.00 sec)mysql> select @a-floor(@a);
+----------------------------------+
| @a-floor(@a) |
+----------------------------------+
| 0.012400000000000000000000000000 |
+----------------------------------+
1 row in set (0.00 sec)mysql> select round(@a-floor(@a),4);
+-----------------------+
| round(@a-floor(@a),4) |
+-----------------------+
| 0.0124 |
+-----------------------+
1 row in set (0.00 sec)
select round(floor(21.875*100)/100,2);
+------------------+
| ROUND(21.8565,3) |
+------------------+
| 21.856 |
+------------------+
1 row in set (0.00 sec)可是真正結果應該是 21.857﹐請問你們有沒有遇到這種情況﹐如何解決﹖
+------------------+
| round(21.8565,3) |
+------------------+
| 21.857 |
+------------------+
1 row in set (0.03 sec)是不是你的版本问题
建议升级到最新的正式版