Hola amigos ya leí varios temas y este es el que mas se acerca a lo que quiero, tengo el también el problema con los decimales, uso el tipo de dato decimal(15,2) el cual me funciona muy bien, el problema que tengo es a la hora de comparar 2 cantidades de un calculo con estos datos, las tablas que tengo son ventas y abonos.
tabla ventas
....
id integer,
subtotal decimal(15,2),
pimpuesto decimal(15,2),
impuesto computed by (subtotal * impuesto / 100),
total computed by (subtotal + impuesto),
......
p/e:
id = 1
subtotal = 142.90
pimpuesto = 15
impuesto = 21.435
total = 164.335
en delphi con la propiedad displayformat el total lo muestro como $164.30
tabla abonos
.......
id_venta integer,
monto decimal(15,2)
.......
p/e:
id_venta = 1
monto = 164.30
visualmente esta bien el cliente me pago la cantidad correcta de la venta, pero el problema se presenta al hacer una vista en base a la siguiente consulta para saber cuanto me deben mis clientes:
Código SQL
[-] select ventas.id, ventas.total, (select sum(abonos.monto) from abonos where abonos.id_venta = ventas.id)) abonos, (Ventas.total - (select sum(abonos.monto) from abonos where abonos.id_venta = ventas.id))) saldo
from ventas
para este ejemplo me dice que este cliente me debe 0.035, cuando no debe de ser así porque trunque el total, alguien me puede decir como debo de filtrar mi consulta para que estas diferencias tan chicas las elimine o en el campo saldo me ponga 0
gracias