关于sqlite3的浮点数比较问题
发布时间:2020-12-12 19:42:00 所属栏目:百科 来源:网络整理
导读:今天写程序发现一个问题,在sqlite3里面, 浮点数 的位数 不同 是不能算 相等 的,如下代码: UPDATE t_wifi SET endtime = %f WHERE tmac='%s' and endtime=%f 这个时候,假如数据库里面的endtime是 xxx.1255 ,而需要匹配的endtme时间为 xxx.1255 0。 这
今天写程序发现一个问题,在sqlite3里面,浮点数的位数不同是不能算相等的,如下代码: UPDATE t_wifi SET endtime = %f WHERE tmac='%s' and endtime=%f 这个时候,假如数据库里面的endtime是 xxx.1255,而需要匹配的endtme时间为 xxx.12550。 这种情况是匹配不到的,所以我们最好把所有的浮点型都格式化,留4位小数点,如下: UPDATE t_wifi SET endtime = %.4f WHERE tmac='%s' and endtime=%.4f这个时候就会正常了! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |