微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

MySQL max 和 MIN 函数显示 100 及以上为最小值

如何解决MySQL max 和 MIN 函数显示 100 及以上为最小值

我进行了查询显示数据库中的最大值和最小值,但它无法完美运行。如果我们有 100 及以上的值,它将返回最低而不是 99 及以下

TypeError                                 Traceback (most recent call last)
<ipython-input-44-3b8a2e2c677f> in <module>()
      6 mc = ks.callbacks.ModelCheckpoint('/content/weights.hdf5',monitor='loss',mode='min',save_best_only=True)
      7 rlrop = ks.callbacks.ReduceLROnPlateau(monitor='loss',factor=0.3,patience=5,mode='min')
----> 8 fit = model.fit(gen,epochs=e,callbacks=[es,mc,rlrop])

5 frames
<ipython-input-41-5da7a84e8739> in batch_generator(dataframe,x_col,y_col,batch_size,w,h,shuffle)
      1 def batch_generator(dataframe,shuffle):
----> 2     x = np.zeros(shape=(batch_size,3),dtype=float)
      3     y_class = np.zeros(shape=(batch_size,1),dtype=int)
      4     y_loc = np.zeros(shape=(batch_size,4,dtype=float)
      5     for i in range(batch_size):

TypeError: 'nonetype' object cannot be interpreted as an integer

结果

SELECT MIN(total) AS min,MAX(total) AS max  FROM `results` WHERE `term_id` = 2 AND  `class_id` = 8 AND `subject_id` = 152

enter image description here

这是我的表结构:

min     max     
100     96

解决方法

因为我以为你有一个 varchar 并且按字典顺序排序

使用

SELECT MIN(total + 0) AS min,MAX(total + 0) AS max  
FROM `results` 
WHERE `term_id` = 2 AND  `class_id` = 8 AND `subject_id` = 152

这会将其转换为数字

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。