最小函数返回最大值和最大函数返回最小值

时间:2018-06-12 12:04:34

标签: mysql sql phpmyadmin

我有一张桌子" abcd"列名为" avg"和价值观" 100"和" 83"。

当我尝试

select max(avg) from abcd  -- Returns 83
select min(avg) from abcd  -- Returns 100

对我来说似乎很奇怪。我从未想过我会在SO中发布这样的内容。看起来可能是一件小事,但是我一整天都在努力解决它。

使用MySQL和phpMyAdmin

2 个答案:

答案 0 :(得分:1)

听起来像一个字符串。一个简单的解决方案是将其转换为数字:

select max(avg + 0)

这使用“静默转换”,因此如果值不是数字,则不会引发错误。

更好的解决方案可能是将其变为数据中的实际数字:

alter table t modify column avg int;

(值似乎是整数。)

答案 1 :(得分:1)

更改random.randint

datatype

如果您使用column avg,则会在varchar

上提供错误的输出

使用以下查询更改number function

column
  

或试试这个

ALTER TABLE `abcd` CHANGE `avg` `avg` INT(11) NOT NULL;