开发者社区 问答 正文

从VARCHAR转换为INT-MySQL

我当前的数据

SELECT PROD_CODE FROM PRODUCT

PROD_CODE 2 5 7 8 22 10 9 11 我已经尝试了所有四个查询,但都没有工作。(参考)

SELECT CAST(PROD_CODE) AS INT FROM PRODUCT;

SELECT CAST(PROD_CODE AS INT) FROM PRODUCT;

SELECT CAST(PROD_CODE) AS INTEGER FROM PRODUCT;

SELECT CAST(PROD_CODE AS INTEGER) FROM PRODUCT; 全部抛出语法错误,如下所示:

您的SQL语法有误;检查与您的MySQL服务器版本相对应的手册,以在第1行的')AS INT FROM PRODUCT LIMIT 0,30'附近使用正确的语法

您的SQL语法有误;在第1行的“ INTEGER)FROM PRODUCT LIMIT 0,30”附近检查与您的MySQL服务器版本相对应的手册以使用正确的语法

在MySQL中将varchar转换为整数的正确语法是什么?

MySQL版本:5.5.16

展开
收起
保持可爱mmm 2020-05-11 10:42:16 603 分享 版权
1 条回答
写回答
取消 提交回答
  • 如强制转换函数和运算符中所述:

    结果的类型可以是以下值之一:

    BINARY[(N)] CHAR[(N)] DATE DATETIME DECIMAL[(M[,D])] SIGNED [INTEGER] TIME UNSIGNED [INTEGER] 因此,您应该使用:

    SELECT CAST(PROD_CODE AS UNSIGNED) FROM PRODUCT来源:stack overflow

    2020-05-11 10:43:52
    赞同 展开评论