Funció MySQL CAST().
La funció CAST segueix una sintaxi senzilla, tal com es mostra a continuació:
CAST ( expr AS tipus [ matriu ] ) ;La funció accepta l'expressió i el tipus de dades de destinació com a paràmetres. A continuació, converteix el valor al tipus de dades de destinació especificat i retorna l'expressió.
La funció pot convertir l'expressió d'entrada a diversos tipus de dades compatibles, com ara BINARY, CHAR, DATE, DATETIME, DECIMAL, DOUBLE, FLOAT, NCHAR, UNSIGNED, SIGNED, REAL, etc.
Exemple 1: funció MySQL CAST().
Vegem alguns exemples d'ús de la funció cast a MySQL.
seleccionar repartiment ( 100 com char ) com fora_;
L'exemple anterior utilitza la funció CAST() per convertir un tipus int en una cadena.
Sortida:
fora_ |----+
100 |
Exemple 2
També podem utilitzar la funció CAST() per convertir un valor al tipus de data, tal com es mostra a l'exemple següent:
seleccionar repartiment ( '2022-10-10' com data ) com fora_;El valor resultant es mostra a continuació:
fora_ |----------+
2022 - 10 - 10 |
És bo tenir en compte que un valor ha de seguir el format correcte i es pot convertir al tipus especificat. Per exemple, si intenteu convertir un valor de data incorrecte a la funció d'emissió, retornarà NULL.
A continuació es mostra un exemple:
seleccionar repartiment ( '10-10-2022' com data ) com fora_;En aquest cas, el format anterior segueix un format de data incorrecte. MySQL retornarà un error, com es mostra a continuació:
Valor de data i hora incorrecte: '10-10-2022'En alguns casos, MySQL retornarà un valor NULL.
Exemple 3: Converteix String a Int
També podem convertir un tipus de cadena donat a int, tal com es mostra a l'exemple següent:
seleccionar repartiment ( '100' com decimal ) com fora_;Sortida:
fora_ |----+
100 |
Exemple 4: Converteix String en Float
seleccionar repartiment ( '100.2' com flotar ) com fora_;Sortida:
fora_ |-----+
100.2 |
Exemple 5: ús de la funció CAST() a la columna de la taula
També podem utilitzar la funció CAST() amb una columna de taula. Per exemple, suposem que tenim una taula com es mostra a continuació:
Podem utilitzar la funció CONCAT() i CAST() per convertir els valors de la columna instal·lada_version, tal com es mostra a la consulta següent:
seleccionar concat ( nom_servidor, ' - ' , repartiment ( versió_instal·lada com char ) de stack_mapping sm;Taula resultant:
concat ( nom_servidor, ' - ' , versió_instal·lada ) |---------------------------------------------+
SQL Server - 15.0 |
Elasticsearch - 8.4 |
Redis - 6.0 |
PostgreSQL - 14.5 |
MySQL - 8.0 |
Conclusió
Aquest tutorial va ensenyar els conceptes bàsics de treballar amb la funció CAST() per convertir un valor d'un tipus a un altre. Es proporcionen diversos exemples per destacar la conversió de String a Int i String a Float.