.
- 1 1. Concepto básico de la función CAST
- 2 2. Sintaxis y uso de la función CAST
- 3 3. Tipos de datos más usados y ejemplos de conversión
- 4 4. Notas importantes y buenas prácticas para la función CAST
- 5 5. Diferencias entre la función CAST y la función CONVERT
- 6 6. Ejemplos Prácticos: Manipulación de Datos Usando la Función CAST
- 7 7. Conclusión
1. Concepto básico de la función CAST
¿Qué es la función CAST?
La función CAST de MySQL es una función SQL utilizada para convertir tipos de datos. Convierte una expresión especificada a otro tipo de dato. Mediante la función CAST puedes, por ejemplo, convertir una cadena en un entero o convertir un tipo de fecha en una cadena. Es una herramienta útil que se emplea con frecuencia en operaciones de bases de datos para mantener la consistencia de los tipos de datos.
Principales usos de la función CAST
La función CAST tiene un amplio rango de aplicaciones y se usa habitualmente en situaciones como las siguientes:
- Normalización de datos: Se utiliza para estandarizar datos almacenados en diferentes formatos. Por ejemplo, ayuda a unificar formatos de fecha almacenados en una tabla.
- Conversión de tipos de datos: Convertir enteros a cadenas o viceversa para optimizar la visualización y los cálculos de los datos.
SELECT CAST('2023-09-22' AS DATE);
Diferencia entre la función CAST y otras conversiones de tipos de datos
La función CAST es similar a otras funciones de conversión de MySQL (como CONVERT), pero la diferencia clave es que CAST cumple con el estándar SQL y es compatible con más sistemas de bases de datos. CONVERT es específico de MySQL y se usa principalmente para propósitos especiales, como la conversión de juegos de caracteres.
2. Sintaxis y uso de la función CAST
Sintaxis de la función CAST
La sintaxis básica de la función CAST es la siguiente:
CAST(expression AS data_type)
En esta sintaxis, se especifica el valor a convertir en la parte de la expresión y el tipo de dato de destino en la parte data_type.
Ejemplos de uso de la función CAST
- Convertir a tipo entero: Se usa al convertir una cadena en un entero.
SELECT CAST('123' AS SIGNED);
- Convertir a tipo cadena: Se usa al convertir un valor numérico en una cadena.
SELECT CAST(123 AS CHAR);
Manejo de errores
Al usar la función CAST, pueden producirse errores si se proporciona un valor no válido para el tipo de dato de destino. Por ejemplo, intentar convertir 'abc' en un valor numérico generará un error. En esos casos, se recomienda manejar los errores combinando funciones como IFNULL.
3. Tipos de datos más usados y ejemplos de conversión
Escenarios comunes de conversión de tipos de datos
Con la función CAST es frecuente convertir a los siguientes tipos de datos:
- Tipo INT: Convierte un valor a tipo entero.
- Tipo VARCHAR: Convierte valores numéricos o de fecha en cadenas.
- Tipo DATE: Convierte cadenas o valores numéricos en fechas.
Conversión a tipo INT
SELECT CAST('456' AS SIGNED);
En este ejemplo, la cadena '456' se convierte en un tipo entero.
Conversión a tipo VARCHAR
SELECT CAST(456 AS CHAR);
Este es un ejemplo de conversión de un entero a una cadena. Esta operación es útil cuando se desea mostrar los datos en un formato específico.
Conversión a tipo DATE
SELECT CAST('2024-01-01' AS DATE);
Esto convierte una cadena en un tipo fecha. De esta manera, los datos se almacenan con precisión y pueden usarse posteriormente en operaciones de fecha.

4. Notas importantes y buenas prácticas para la función CAST
Notas importantes al usar la función CAST
Hay varios puntos clave a considerar al usar la función CAST:
- Compatibilidad de tipos: Las conversiones no válidas pueden generar errores, por lo que es necesario verificar la compatibilidad de tipos con anticipación.
- Pérdida de precisión de datos: Especialmente al convertir números de punto flotante, puede perderse precisión.
Buenas prácticas
- Usar el tipo DECIMAL: Al convertir números de punto flotante, utiliza el tipo DECIMAL para evitar la pérdida de precisión.
SELECT CAST(123.456 AS DECIMAL(5,2));
- Manejo de errores: Si se mezclan tipos de datos inesperados, se recomienda manejar los errores usando
IFNULLo sentenciasCASE.
5. Diferencias entre la función CAST y la función CONVERT
Comparación de CAST y CONVERT
Tanto CAST como CONVERT se utilizan para convertir tipos de datos, pero difieren en sintaxis y propósito.
- Función CAST : Ampliamente utilizada en SQL estándar, con la sintaxis
CAST(expresión AS tipo_datos). - Función CONVERT : Una función específica de MySQL con la sintaxis
CONVERT(expresión, tipo_datos).
Ejemplo de Uso de la Función CONVERT
La función CONVERT se utiliza principalmente para la conversión de conjuntos de caracteres.
SELECT CONVERT('abc' USING utf8);
En este ejemplo, se convierte el conjunto de caracteres de la cadena.
¿Cuál Debería Usar?
En general, se recomienda usar la función CAST porque sigue el estándar SQL y es ampliamente compatible. Sin embargo, cuando se requiere conversión de conjuntos de caracteres, la función CONVERT es más apropiada.
6. Ejemplos Prácticos: Manipulación de Datos Usando la Función CAST
Ejemplos de Manipulación de Datos del Mundo Real
Aquí hay ejemplos de realización de operaciones de datos reales usando la función CAST.
Ordenación Después de Convertir Números a Cadenas
Por ejemplo, al convertir valores numéricos en cadenas antes de ordenar, puede escribir la consulta de la siguiente manera:
SELECT CAST(column_name AS CHAR) FROM table ORDER BY column_name;
Filtrado Después de Convertir Cadenas a Números
También puede convertir cadenas en números y filtrar en base a un rango específico.
SELECT * FROM table WHERE CAST(column_name AS SIGNED) > 100;
7. Conclusión
Resumen del Artículo
La función CAST es extremadamente útil para convertir tipos de datos de manera eficiente. En este artículo, cubrimos todo desde el uso básico hasta ejemplos prácticos. Al realizar conversiones de tipos de datos, siempre preste atención a la compatibilidad de tipos y la precisión de los datos, y haga pleno uso de la función CAST en sus operaciones de base de datos.


