val pasar parse numero entero convertir convert mysql sql

pasar - Reparto de VARCHAR a INT-MySQL



parse varchar to int in mysql (2)

Como se describe en Funciones y operadores de reparto :

El tipo para el resultado puede ser uno de los siguientes valores:

  • BINARY[(N)]
  • CHAR[(N)]
  • DATE
  • DATETIME
  • DECIMAL[(M[,D])]
  • SIGNED [INTEGER]
  • TIME
  • UNSIGNED [INTEGER]

Por lo tanto, debes usar:

SELECT CAST(PROD_CODE AS UNSIGNED) FROM PRODUCT

Mis datos actuales para

SELECT PROD_CODE FROM `PRODUCT`

es

PROD_CODE 2 5 7 8 22 10 9 11

He intentado todas las cuatro consultas y ninguno funciona. ( Ref )

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;

Todos lanzan errores de sintaxis como los siguientes:

Tienes un error en tu sintaxis SQL; consulte el manual que corresponde a la versión de su servidor MySQL para conocer la sintaxis correcta para usar cerca de '') COMO INT DESDE EL LÍMITE DEL PRODUCTO 0, 30'' en la línea 1

Tienes un error en tu sintaxis SQL; consulte el manual que corresponde a la versión de su servidor MySQL para conocer la sintaxis correcta para usar cerca de ''INTEGER] DESDE EL LÍMITE DE PRODUCTO 0, 30'' en la línea 1

¿Cuál es la sintaxis correcta para convertir varchar a entero en MySQL?

Versión de MySQL: 5.5.16


Para convertir campos / valores varchar a formato numérico se puede usar un pequeño corte:

SELECT (`PROD_CODE` * 1) AS `PROD_CODE` FROM PRODUCT`