Hello, 

We repeatedly have queries like 

select * from Tab where primary_key between ? and ?. 

SQLite retrieves all result-records according to their rowids (=primary key in 
our case). 
Is it also possible to force SQLite to retrieve all records according to their 
pageid. 
So the idea is that we first carry out the range scan on B+-tree level, sort 
the rowid values according to their physical pageid, and then retrieve the data 
in the order of the pageids rather than ordered by rowids. 
Basically, this approach would take longer to get the first result record, but 
it would be more efficient to get all results, as jumping around in the 
database file is reduced.
This is especially true if the records are not ordered on the physical media 
according to their rowid values, i.e. after heavy updating. 

Are there some thought on that? 

Best Martin 

Reply via email to