>>>>> "Steve" == Steve Edberg <sbedberg@stripped> writes:
Steve> ...perhaps a NEAR function could be added; as a config file or compile-time
Steve> option, you could define an accuracy range. Say,
Steve> ./config --with-epsilon=0.0001
Steve> (if memory of my numerical analysis classes serves, the 'fudge factor' was
Steve> conventionally symbolized by epsilon; I suppose you could make it
Steve> --with-fudge, but this ain't no bakery) so that
Steve> select 1.0 near 1.00009 => 1
Steve> select 1.0 near 0.9995 => 0
Steve> The default would be current behavior (epsilon=0).
Steve> This would avoid statements like
Steve> select * where x > 0.99999999 and x < 1.00000001
Steve> ...just my too sense -
First a note; We can't generally have a fudge factor for floating
The problem with this is that if you do 3 selects:
SELECT * from x where < 1
SELECT * from x where == 1
SELECT * from x where > 1
you would get some of the records in all of the above 3 sets.
This could easily in the long run cause even more confusion than the
But a near function/operator would probably be a good idea; We will
put this on our todo.