On 25-07-2011 15:45, Григорий Григоренко wrote: > I think I narrowed the problem a bit. Guys, hope I'm not bothering you too > much :) > > > I've calculated size of index (it is index on log (kind,computer) ) of its > own: dropped index, run VACUUM and re-created index.
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 Therefore i think you can do: DROP INDEX idxlog_kind; DROP INDEX idxlog_kind_computer; DROP INDEX idxlog_kind_computer_process; It drops your db-size, and a 'normal' select will make use of the idxlog_kind_computer_process_who index. C:\TEMP>sqlite3 2011-07-24.dblite 0<sql.txt 0|0|TABLE log WITH INDEX idxlog_kind_computer_process_who Seconds elapsed: 1 C:\TEMP>run.cmd C:\TEMP>sqlite3 2011-07-24.dblite 0<sql.txt 0|0|TABLE log WITH INDEX idxlog_kind_computer_process_who Seconds elapsed: 2 -- Luuk _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users