4

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

看,我在 varchar 中有表格列,但它只有数字。在那我想选择该值的最小最大值。

请检查以下查询,其中出现语法错误。

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

请参考下面的sqlfiddle

4

2 回答 2

6

您可以在使用添加等操作时强制执行自动数字转换

select MAX(ch1+0) as max_ch1,
       MIN(ch1+0) as min_ch1 
from t9
于 2013-10-11T11:53:15.857 回答
6

我认为这就是你要找的:

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

在这里工作 SQLFiddle 。

您必须将值转换为SIGNED,这对应INTEGER于 MySQL。有关此的更多信息,请点击此处

于 2013-10-11T11:54:48.777 回答