SQL 语句将 varchar 转换为整数
SQL statement convert varchar to integer
我在尝试使用 SQL 语句将 MySQL 中的 varchar 字段转换为整数时遇到了一些问题:
SELECT mrtpopTime, CONVERT(INT,mrtpopAmt)
FROM tm_mrtpop
WHERE mrtpopName = ''
ORDER BY CONVERT(INT, mrtpopAmt) DESC
当 mrtpopAmt 以相反顺序排列时,我试图获得前 3 条记录。但是,我在 INT 收到错误消息,错误消息是:
Syntax error, Unecpected INT_SYM
我想知道为什么会这样?提前致谢。
这是因为 MySQL 没有使用 CONVERT()
进行转换。它使用 CAST
函数。在您的情况下,您将使用:
CAST(mrtpopAmt AS SIGNED) -- This can also be UNSIGNED if it will always be a positive integer
我在尝试使用 SQL 语句将 MySQL 中的 varchar 字段转换为整数时遇到了一些问题:
SELECT mrtpopTime, CONVERT(INT,mrtpopAmt)
FROM tm_mrtpop
WHERE mrtpopName = ''
ORDER BY CONVERT(INT, mrtpopAmt) DESC
当 mrtpopAmt 以相反顺序排列时,我试图获得前 3 条记录。但是,我在 INT 收到错误消息,错误消息是:
Syntax error, Unecpected INT_SYM
我想知道为什么会这样?提前致谢。
这是因为 MySQL 没有使用 CONVERT()
进行转换。它使用 CAST
函数。在您的情况下,您将使用:
CAST(mrtpopAmt AS SIGNED) -- This can also be UNSIGNED if it will always be a positive integer