Modelado físico avanzado relacional de bases de datos
Las funciones de conversión de números en SQL permiten transformar valores numéricos en otros tipos de datos o modificar su formato. A continuación, veremos las funciones más utilizadas en SQLite, PostgreSQL y MySQL.
1. CAST() - Convertir Tipos de Datos
La función CAST() se usa para convertir un valor de un tipo a otro.
Ejemplo:
1SELECT CAST(123.45 AS SIGNED);
Esto convierte el número decimal 123.45 en 123.
Otro ejemplo útil:
1SELECT CAST('2024-01-01' AS DATE);
Convierte un texto en tipo DATE (solo en PostgreSQL y MySQL, SQLite maneja fechas como texto).
2. CONVERT() - Conversión de Tipos de Datos (Solo MySQL)
CONVERT() es similar a CAST(), pero exclusivo de MySQL.
Ejemplo:
1SELECT CONVERT(123.45, SIGNED);
3. ROUND() - Redondeo de Números
ROUND() redondea un número a la cantidad de decimales especificada.
Ejemplo:
1-- SQLite, PostgreSQL, MySQL 2SELECT ROUND(123.456, 2);
Esto devuelve 123.46, redondeando a dos decimales.
4. CEIL() y FLOOR() - Redondeo hacia Arriba o Abajo
CEIL()redondea hacia arriba.FLOOR()redondea hacia abajo.
Ejemplo:
1SELECT CEIL(123.45); -- Devuelve 124 2SELECT FLOOR(123.45); -- Devuelve 123
5. TRUNC() - Truncar Decimales (PostgreSQL y MySQL)
Elimina los decimales sin redondear.
Ejemplo:
1SELECT TRUNCATE(123.456, 2);
6. FORMAT() - Formatear Números (Solo en MySQL)
Devuelve un número con formato específico.
Ejemplo:
1SELECT FORMAT(12345.6789, 2); -- Resultado: '12,345.68'
Esto devuelve 12,345.68 con separación de miles y dos decimales.
7. ABS() - Valor Absoluto
Devuelve el valor absoluto de un número.
Ejemplo:
1SELECT ABS(-123.45);
Esto devuelve 123.45.
8. POWER() y SQRT() - Potencia y Raíz Cuadrada
POWER(base, exponente)calcula una potencia.SQRT(valor)devuelve la raíz cuadrada.
Ejemplo:
1SELECT POWER(2, 3); -- Devuelve 8 2SELECT SQRT(16); -- Devuelve 4