Redondear y dividir
SQL · Unidad 4: NULL y expresiones
- Plan completo
- SQL
- 10 ejercicios
¿Cuánto cuesta el Teclado con el impuesto del 16 %? La cuenta es 45.5 * 1.16, y mira lo que da. No es un error tuyo ni de SQL. Aquí los decimales se guardan en binario, y ahí números como 0.1 no caben exactos. PostgreSQL y MySQL tienen además un tipo decimal exacto, y es el que se usa para guardar dinero.
Hasta hoy las cuentas del curso salían limpias porque las elegimos así. ROUND redondea a los decimales que le pidas, y con él ya se puede hacer cualquier cuenta.
SELECT 45.5 * 1.16 AS sucio,
ROUND(45.5 * 1.16, 2) AS limpio;Devuelve
| sucio | limpio |
|---|---|
| 52.779999999999994 | 52.78 |
El resto de la explicación está en la lección, que es del plan completo.
Ejercicios de esta lección
Se hacen en la app, que los corrige al momento y explica por qué.
1. Predice la salida
El segundo valor de
ROUNDdice cuántos decimales quedan. Si no lo pones, no queda ninguno. ¿Qué devuelve esta consulta?2. Predice la salida
De los productos de los que quedan 7 unidades o menos, la tienda reparte lo que hay entre su local de Lima y la tienda en línea, mitad y mitad. Del Monitor hay 5, del Portátil 3 y de la Tableta 7. ¿Qué devuelve esta consulta?
3. Opción múltiple
El Monitor cuesta 189 y quedan 5.
precio / 2da 94.5, con su decimal, ystock / 2da 2. ¿Por qué una división corta y la otra no?4. Encuentra el bug
¿Qué parte de una caja de 10 ocupa cada pedido de Luis, el cliente 2? Sus pedidos son de 5, 2 y 1 unidades, así que debería salir 0.5, 0.2 y 0.1. Salen tres ceros. ¿Qué línea tiene el problema?
5. Completa el código
Los equipos se pueden pagar en tres pagos iguales. Completa para ver de cuánto es cada pago, con dos decimales.
6. Ordena las líneas
¿Qué porcentaje de su estante de 30 ocupa cada producto que hay en stock? Ordena la consulta, del estante más lleno al más vacío. Sobra una línea.
7. Predice la salida
El Ratón cuesta 19.9. ¿Qué devuelve aquí esta consulta?
8. Ordena las líneas
¿Cuáles son los cuatro productos en stock que más puntos dan? Ordena la consulta. Sobra una línea.
9. Encuentra el caso que falla
El Monitor cuesta 189. Esta consulta debería dar los puntos que da comprarlo, uno por cada unidad entera del precio, sin contar los centavos. Aquí eso se hace con
CAST, y quien la escribió usóROUND. ¿Con cuál de estos precios regala un punto de más?10. Escribe el código
La lista de precios que la tienda no podía sacar hasta hoy. De cada producto, muestra tres columnas en este orden, su
nombre, suprecioy el precio con el impuesto del 16 %, redondeado a dos decimales.
Se abre en el navegador. Esta lección es del plan completo; la primera unidad de cada curso es gratis.