MySql Max(),Min()函数获取最大值,最小值错误

问题:查询某一个字段的最大值最小值出现错误
!
在这里插入图片描述
MySql Max(),Min()函数获取最大值,最小值错误_第1张图片
由图所示开始查询的最大值跟最小值于实际不符。
原因:这是因为runtime字段的数据类型为varchar类型。
所以max获取的最大值会从头开始比较,99的第一位为100的第一位为1,所以max函数获取的最大值为9开头的数值。

解决办法:
1.修改字段的数据类型改为数字比如int。
2.在不方便修改字段数据类型的情况下可以在查询最大值的时候+0,例如:Max(字段名+0),select max(runtime+0) from bus_car_ecu where carnum = "转R20016" and committime >"2021-08-09 14:39:49" and committime <"2021-08-10 16:39:49"
修改之后查询结果:
MySql Max(),Min()函数获取最大值,最小值错误_第2张图片

你可能感兴趣的:(sql,报错解决,mysql)