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

MySQL CAST – Como digitar Cast no MySQL


Às vezes você pode precisar converter dados MySQL de um tipo de dados para outro. Veja como fazer typecast de dados usando a função MySQL CAST.


Como digitar Cast no MySQL


Veremos como o MySQL CAST funciona e como digitar dados usando a função MySQL CAST.

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á um exemplo de consulta SQL em que convertemos um int em um char na cláusula SELECT
mysql> select cast(1 as char)
from sales;



Você também pode usar MySQL CAST na cláusula WHERE. Aqui nós convertemos string para int na cláusula WHERE.
mysql> select *
from sales
where id=CAST('213' as int);



Bônus de leitura:Como usar o MySQL Rollup Query


Exemplos do MySQL CAST


Vejamos alguns dos exemplos comuns da função MySQL CAST.


MySQL CAST as Int


Aqui está um exemplo para o MySQL converter float para inteiro assinado. Observe que você só pode converter para tipos de dados inteiros UNSIGNED ou SIGNED. Você não pode usar INT na função CAST.
mysql> select cast(1.23 as signed);
+------------------------+
| cast(1.23 as   signed) |
+------------------------+
|                      1 |
+------------------------+


MySQL CAST como Decimal


Veja como converter como decimal
mysql> select cast(1.23 as decimal(4,3));
+----------------------------+
| cast(1.23 as decimal(4,3)) |
+----------------------------+
|                      1.230 |
+----------------------------+



Bônus de leitura:Como verificar a versão do MySQL


MySQL CAST como flutuante


MySQL CAST não suporta conversão como float. Você tem que converter como decimal como mostrado acima.
mysql> select cast(2.234 as decimal(5,3));
+-----------------------------+
| cast(2.234 as decimal(5,3)) |
+-----------------------------+
|                       2.234 |
+-----------------------------+


MySQL convertido como Varchar


MySQL CAST não suporta conversão como varchar. Você precisa converter como char como mostrado abaixo.
mysql> select cast('xyz' as char);
+---------------------+
| cast('xyz' as char) |
+---------------------+
| xyz                 |
+---------------------+


MySQL Datetime to Date


Veja como converter datetime para date.
mysql> select cast('2020-01-01 13:30:00' as date);
+-------------------------------------+
| cast('2020-01-01 13:30:00' as date) |
+-------------------------------------+
| 2020-01-01                          |
+-------------------------------------+

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