十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
写个函数 自己调用处理就行了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;
创新互联成立于2013年,我们提供高端重庆网站建设公司、成都网站制作、网站设计、网站定制、网络营销推广、小程序制作、微信公众号开发、成都网站营销服务,提供专业营销思路、内容策划、视觉设计、程序开发来完成项目落地,为混凝土搅拌罐企业提供源源不断的流量和订单咨询。
avg之后用一些函数可以去掉,看你是四舍五入,还是什么要求? 1.四舍五入 round(123.5)2.舍去小数 floor(123.5)3.如果小数部分有值就进一 ceil(123.5) 或者 ceiling(123.5)
写个函数 自己调用处理就行了
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数据库表里面,设置你要取整的字段的数据类型为int,即可
不用写进去是小数,用的时候再取整,这么麻烦