如何在mysql中选择从cast varchar到int的min

时间:2013-10-11 11:47:13

标签: mysql sql

如何在mysql中将varchar转换为double值

请参阅,我在varchar中有表列,但它只有数字。因为我想选择最小值的最大值。

请检查以下查询,其中我收到语法错误。

select 
    MAX(CAST(ch1 as INT)) as max_ch1,
    MIN(CAST(ch1 as INT)) as min_ch1 
from t9;

请参阅下面的sqlfiddle

2 个答案:

答案 0 :(得分:5)

我认为这就是你要找的东西:

SELECT
  MIN(CAST(CH1 AS SIGNED)),
  MAX(CAST(CH1 AS SIGNED))
FROM t9

使用SQLFiddle here

您必须将值CAST为SIGNED,这与MySQL中的INTEGER相对应。有关此内容的更多信息,here

答案 1 :(得分:2)

添加像乘法

这样的操作时,可以强制进行自动数值转换
select MAX(ch1*1) as max_ch1,
       MIN(ch1*1) as min_ch1 
from t9