sql >> Base de Datos >  >> RDS >> Mysql

Eliminar ceros finales en valor decimal con longitud cambiante

La forma más fácil de lejos, ¡simplemente agregue cero!

Ejemplos:

SET 
    @yournumber1="1.500", 
    @yournumber2="23.030",
    @yournumber3="2.000",
    @yournumber4="4.450"
;

SELECT 
    (@yournumber1+0),
    (@yournumber2+0),
    (@yournumber3+0),
    (@yournumber4+0)
;

+------------------+------------------+------------------+------------------+
| (@yournumber1+0) | (@yournumber2+0) | (@yournumber3+0) | (@yournumber4+0) |
+------------------+------------------+------------------+------------------+
|              1.5 |            23.03 |                2 |             4.45 |
+------------------+------------------+------------------+------------------+
1 row in set (0.00 sec)

Si la columna de la que proviene su valor es DECIMAL o NUMERIC escriba, luego cámbielo a una cadena primero para asegurarse de que la conversión se lleve a cabo... por ejemplo:

SELECT (CAST(`column_name` AS CHAR)+0) FROM `table_name`;

Para una forma más corta, simplemente use cualquier función de cadena integrada para hacer el lanzamiento:

SELECT TRIM(`column_name`)+0 FROM `table_name`;