What you see is not a bug, it’s an annoying heritage of C syntax. Might even
precede C. Here’s the problem:
select column1*(24/100);
And here’s what you’re meant to do for 24%:
select column1*(24.0/100.0);
Alternatively, the value in column1 should be real. That should also work.
If your numbers are real, express them as real, using either a decimal point or
exponent/mantissa format. "24" means integer 24. "24.0" means real 24.
I’ve had this behaviour bite me when I was doing some simple maths in C and
divided by "4" instead of "4.0". It took me numerous debugging statements and
three or four hours to figure out what was wrong, and when I figured it out I
was so annoyed I left work early.
Simon.
_______________________________________________
sqlite-users mailing list
[email protected]
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users