Mysql
 sql >> Base de données >  >> RDS >> Mysql

Lancer en varchar

Vous devrez cast ou convert en tant que CHAR type de données, il n'y a pas de varchar type de données vers lequel vous pouvez caster/convertir des données :

select CAST(id as CHAR(50)) as col1 
from t9;

select CONVERT(id, CHAR(50)) as colI1 
from t9;

Voir le SQL suivant — en action — sur SQL Fiddle :

/*! Build Schema */
create table t9 (id INT, name VARCHAR(55));
insert into t9 (id, name) values (2, 'bob');

/*! SQL Queries */
select CAST(id as CHAR(50)) as col1 from t9;
select CONVERT(id, CHAR(50)) as colI1 from t9;

Outre le fait que vous essayiez de convertir en un type de données incorrect, la syntaxe que vous utilisiez pour convert était incorrect. Le convert la fonction utilise ce qui suit où expr est votre colonne ou valeur :

 CONVERT(expr,type)

ou

 CONVERT(expr USING transcoding_name)

Votre requête d'origine avait la syntaxe à l'envers.