> On 2016-Feb-23, at 20:34 , Mengxi Liao <[email protected]> wrote: > > For some reason the following two queries return different results > > Where there is only one activity record and price is 3.63 and quantity is > 16.19, the following codes return results of different rounding. > > sum("CEIL(`activities`.quantity/60) * 60 / 3600 * `activities`.price").to_s > > "58.81" > > sum("CEIL(`activities`.quantity/60) * 60 / 3600 * `activities`.price * > 1").to_s > > "58.806" # this is the correct one > > > > I have checked the raw sql and both return 58.806. > > > > I believe this is a bug for the sum method. > 0 < 16.19 / 60 ≤ 1
so the ceiling of that should be 1 1 * 60.0 / 3600 * 3.63 == 0.0605 so unless you also have a bug in your CEIL() function, I don't see how the problem can be in the sum() what are you really doing? -Rob -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/rubyonrails-talk/5EB05072-3693-448E-867C-7FC6CDC50405%40agileconsultingllc.com. For more options, visit https://groups.google.com/d/optout.

