> On the other hand, what table has a floating point number in its key? > > How do you even express the value of such a key for an exact match?
Well I imagine it can be very useful for range queries. Imagine Julian dates, coordinate points, rankings, etc. I suppose in the most common case, parsing the on-disk format to IEEE would only be necessary on a small number of rows, after the range query has already used memcmp() to find the rows it cares about. But yeah, in the case of bulk loading it’s probably only a loss. > On Apr 4, 2019, at 11:15 AM, James K. Lowden <jklow...@schemamania.org> wrote: > > On Wed, 3 Apr 2019 17:29:47 -0400 > Richard Hipp <d...@sqlite.org> wrote: > >> On 4/3/19, Joshua Wise <joshuathomasw...@gmail.com> wrote: >>> From my naive understanding, memcmp() is used to efficiently >>> compare long strings of bytes. But where in SQLite3 is it necessary >>> to compare long strings of floating point numbers? I, of course, >>> can imagine SQL queries plucking single floating point values from >>> rows or indexes, but I can?t imagine where the long strings would >>> be. Could you enlighten me? >> >> Comparing keys in a btree search uses a lot of CPU cycles. If the >> comparison can be done using memcmp() rather than some custom >> function, the comparison goes much faster, which makes searching >> btrees faster. > > On the other hand, what table has a floating point number in its key? > > How do you even express the value of such a key for an exact match? > > There is also a significant cost of converting to and from IEEE > format. In my experience bulk-loading quantitative databases, I > encountered many occasions in which parsing the input accounted for 50% > of the computation. The limit wasn't network bandwidth or server > speed, it was data conversion. > > --jkl > _______________________________________________ > sqlite-users mailing list > sqlite-users@mailinglists.sqlite.org > http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users _______________________________________________ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users