写个函数 自己调用处理就行了CREATE FUNCTION `NewProc`(format_vale VARCHAR(100)) RETURNS varchar(100)BEGIN DECLARE dec_number VARCHAR(4000); DECLARE dec_number_vale VARCHAR(4000); SET dec_number = ''; SET dec_number_vale = CAST(format_vale AS CHAR); WHILE dec_number_vale IS NOT NULL DO -- 剪切字符串 SET dec_number = right(dec_number_vale,1); IF dec_number = '0' || dec_number= '.' THEN SET dec_number_vale = LEFT(dec_number_vale ,LENGTH(dec_number_vale)-1); ELSE RETURN dec_number_vale; END IF; END WHILE;END;
站在用户的角度思考问题,与客户深入沟通,找到施甸网站设计与施甸网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:网站制作、成都做网站、企业官网、英文网站、手机端网站、网站推广、域名与空间、雅安服务器托管、企业邮箱。业务覆盖施甸地区。
mysql中小数点用decimal(x,y)进行存储,
示例如下,
1、创建测试表,create table test_decimal(id int, fee_value decimal(20,3));
2、插入测试数据,
insert into test_decimal values(1,12.2);
insert into test_decimal values(3,33.789);
insert into test_decimal values(6666,555.332);
3、查询表中所有记录,select * from test_decimal t;
4、小数转整,可以用floor或round函数,select t.*, floor(fee_value) as fee1, round(fee_value) fee2 from test_decimal t;
avg之后用一些函数可以去掉,看你是四舍五入,还是什么要求? 1.四舍五入 round(123.5)2.舍去小数 floor(123.5)3.如果小数部分有值就进一 ceil(123.5) 或者 ceiling(123.5)
这个问题,直接在源头解决;
Mysql数据库表里面,设置你要取整的字段的数据类型为int,即可
不用写进去是小数,用的时候再取整,这么麻烦