> > I thought that, if you have an index on a,b,c,d > than you should not have an index on a,b,c too > because if you use those 3 field in the where-clause, use can be made of > the 4-field index >
I'm not sure. Let me explain. I need query to be ORDER BY id DESC. I've dropped this ORDER BY to simplify my case. But in real-life app I need it. So, index on (kind, computer) has these index records: [ KIND ] [ COMPUTER ] [ ID ] ... They are ordered by kind, computer and then by id. So ORDER BY id DESC comes free. Query planner just need to retrieve records from subset of index records starting at last one backwards. Index on (kind,computer, process,who) has these index records: [ KIND ] [ COMPUTER ] [ PROCESS ] [ WHO ] [ ID ] This time having found subset of index records query planner cannot start retrieving them from the last to first. It has to sort them by ID at first. Isn't it? Maybe I'm not getting it right? _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users