Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

MySQL CAST vs CONVERT


MySQL CAST e MySQL CONVERT ajudam você a alterar o tipo de dados no MySQL. Eles são muito semelhantes em funcionalidade com algumas diferenças. Aqui está a comparação MySQL CAST vs CONVERT para ajudá-lo a decidir qual usar.


MySQL CAST vs CONVERT


Aqui está uma comparação passo a passo MySQL CAST vs CONVERT.


Funcionalidade


MySQL CAST permite converter dados de um tipo de dados para outro tipo de dados. Aqui está nosso artigo detalhado sobre MySQL CAST.

MySQL CONVERT também permite converter dados de um tipo de dados para outro tipo de dados. Também permite converter o conjunto de caracteres de dados em outro conjunto de caracteres. MySQL CAST não pode ser usado para alterar o conjunto de caracteres. Aqui está nosso artigo detalhado sobre o MySQL CONVERT.

Você pode usar MySQL CAST e MySQL CONVERT para converter tipos de dados de literais e colunas.


Sintaxe


Aqui está a sintaxe da função MySQL CAST
CAST(data as data_type)

O MySQL CAST requer duas entradas – os dados a serem tipificados e o tipo de dados (decimal, char, etc) para o qual você deseja converter esses dados. Você pode converter dados em tipos de dados BINARY, CHAR, DATE, DATETIME, TIME, DECIMAL, SIGNED, UNSIGNED.

Você pode fornecer dados como um valor literal, conforme mostrado abaixo
CAST(1 as char)

OU

Você pode dados como um nome de coluna (por exemplo, id)
CAST(id as char)



Bônus de leitura:consulta de reversão do MySQL



Aqui está a sintaxe da função MySQL CONVERT
CONVERT(input_value, data_type)

Na função acima, você precisa fornecer input_value como literal ou nome de coluna e data_type para o qual deseja converter esses dados. Assim como o MySQL CAST, você pode converter dados nos tipos de dados BINARY, CHAR, DATE, DATETIME, TIME, DECIMAL, SIGNED, UNSIGNED.

Por exemplo, veja como converter o valor literal em outro tipo de dados
CONVERT(1, char)

e aqui está como converter uma coluna (por exemplo, id) para outro tipo de dados
CONVERT(id, char)



Aqui está a sintaxe do MySQL CONVERT para converter conjuntos de caracteres
CONVERT(input_value USING character_set)

Na função acima, você precisa fornecer input_value como string literal ou nome de coluna e character_set para o qual deseja converter esses dados.

Aqui está um exemplo de como converter como latin1
convert('test string' using 'latin1')

Bônus de leitura:Como usar o MySQL Rollup


Tipos de dados compatíveis


Ambos MySQL CAST e MySQL CONVERT suportam conversão de dados apenas para tipos de dados BINARY, CHAR, DATE, DATETIME, TIME,DECIMAL, SIGNED, UNSIGNED. Outros tipos de dados não são suportados.


Especificação SQL ANSI


MySQL CAST faz parte da especificação ANSI SQL, enquanto o MySQL CONVERT não faz parte da especificação ANSI SQL.



Como mencionado anteriormente, MySQL CAST e MySQL CONVERT são semelhantes e podem ser usados ​​alternadamente na maioria dos casos.



O Ubiq facilita a visualização de dados em minutos e o monitoramento em painéis em tempo real. Experimente hoje!