如何使用SQL查询将字符串转换为整数或双精度

时间:2019-02-13 06:09:23

标签: mysql

我正在使用MySQL,我想将字符串转换为数字,因为我必须在它们之间选择最大值。

  • 在我的数据库中,我有两列item codeitem name,都是varchar类型的
  • 所以item code我要它转换为intdouble

This is my table in database

在这里,我将查询写为SELECT MAX(itemcode) FROM ITEMMASTER,它给我的结果是603,我希望它给我2402,因为这是最大值

任何帮助或指导将不胜感激

2 个答案:

答案 0 :(得分:2)

您可以尝试以下查询。

select Max(cast(itemcode as UNSIGNED)) from ITEMMASTER 

供参考:https://dev.mysql.com/doc/refman/8.0/en/cast-functions.html#function_cast

答案 1 :(得分:0)

您可以尝试使用MySQL CAST()函数,如下所示:

CAST(expression AS TYPE);

CREATE TABLE ITEMMASTERTest  (
    ItemCode VARCHAR(255),
    ItemName VARCHAR(255)
);

INSERT INTO ITEMMASTERTest (ItemCode,ItemName) VALUES ('2402', 'A');
INSERT INTO ITEMMASTERTest (ItemCode,ItemName) VALUES ('333', 'B');
INSERT INTO ITEMMASTERTest (ItemCode,ItemName) VALUES ('603', 'C');
INSERT INTO ITEMMASTERTest (ItemCode,ItemName) VALUES ('1001', 'C');

Select Max(CAST(ItemCode AS SIGNED)) FROM ITEMMASTERTest ;

您可以查看现场演示Here