Necesito convertir minutos a horas, redondeado a 2 decimales. También necesito mostrar solo hasta 2 números después del punto decimal. Entonces, si tengo minutos como 650, entonces las horas deberían ser 10.83
Esto es lo que tengo hasta ahora:
Select round(Minutes/60.0,2) from ....
Pero en este caso, si mis minutos son, digamos, 630 horas, son 10.5000000. Pero lo quiero solo como 10.50 (después del redondeo). ¿Cómo logro esto?

Respuestas:
¿No podrías lanzar tu resultado como
numeric(x,2)? Dóndex <= 38Devoluciones
fuente
SELECT ROUND(630/60.0, 2);me da10.50cast(630/60.0 as numeric(36,2))es suficiente10,50Al igual que con SQL Server 2012, puede usar la función de formato integrada :
(solo para lecturas adicionales ...)
fuente
1,757.47puedes usar
fuente
fuente
fuente
fuente
Funciona tanto en postgresql como en Oracle
fuente
La siguiente consulta es útil y simple.
Da salida como 0.25.
fuente
Cualquier cosa que use en denominación debe estar en decimal, por ejemplo
1548/100, dará15.00Si reemplazamos
100con100.0en nuestro ejemplo, obtendremos15.48fuente
Convierte tu número a
NumericoDecimal.Reemplace su consulta con lo siguiente.
Servidor SQL
MySql:
La
Castfunción es un contenedor para laConvertfunción. Combine eso con que SQL es un lenguaje interpretado y el resultado es que aunque las dos funciones producen los mismos resultados, hay algo más detrás de escena en laCastfunción. Usar laConvertfunción es un ahorro pequeño, pero los ahorros pequeños se multiplican.fuente
prueba esto :
SELECT CAST(ROUND([Amount 1]/60,2) AS DECIMAL(10,2)) as TOTALfuente
Como complemento de las respuestas a continuación, cuando use INT o tipos de datos no decimales en sus fórmulas, recuerde multiplicar el valor por 1 y el número de decimales que prefiera.
es decir,
TotalPackageses anINTy, por lo tanto, el denominadorTotalContainers, pero quiero que mi resultado tenga hasta 6 decimales.así:
fuente
El siguiente fragmento podría ayudarte:
fuente
Encuentro que la función STR es el medio más limpio para lograr esto.
fuente