有时候我们需要把carchar类型的字段进行聚合函数运运行(max、min、avg),但是如果直接用聚合函数,得到的结果是错误的,因为varchar字段是字符串,无法直接使用聚合函数,所以需要把varchar字段转换成数字类型,再使用聚合函数进行后续运算。
可以使用‘+0’或‘*1’的方法将字段值转换成数字。如求score_new的最大值,score_new字段是varchar类型。
php">$max = Db::table('shijuan_achieve')->max('score_new*1');
或
php">$max = Db::table('shijuan_achieve')->max('score_new+0');